IP Library Granted Patent US 10,404,550
Granted Patent B1
US 10,404,550 · App. 15/968,339 · Granted Sep 3, 2019

Web service selector component

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,404,550
App. No.
15/968,339
Granted
Sep 3, 2019
Kind
B1
Abstract

An apparatus, method, and a computer program are provided. In one embodiment, a request is transmitted to a selector module for an available web service and a response is received from the selector module for a web service server. The response includes an endpoint uniform resource indicator to allow a client module to transmit a web service request to an appropriate web service server.

Claims (37)

1. A computer-implemented method performed in a client apparatus, comprising:

sending a request to a selector module located on the client apparatus, the request identifying a class of commodity for an available web service without indicating an endpoint for the available web service, wherein the selector module utilizes feedback metrics received from a client module;

selecting, by the selector module in the client apparatus, a web service endpoint from a list of web service endpoints in response to the request, the web service endpoint selected based on global optimization of feedback metrics stored by the selector module and the available web service, the list of web service endpoints being received from an external registry of web services and pre-stored in the client apparatus to enable selection of a web service without querying the external registry;

receiving a response from the selector module for a web service server, wherein the response comprises a uniform resource indicator corresponding to the selected web service endpoint to allow the client module located on the client apparatus to transmit the web service request to an appropriate web service server;

determining updated feedback metrics based on a request and response interaction that indicates a performance of the selected web service endpoint related to the uniform resource indicator, and wherein the client module gathers the updated feedback metrics for the selected web service endpoint for transmission to the selector module to update the feedback metrics stored on the client apparatus; and

updating the stored feedback metrics by the selector module on the client apparatus based on the updated feedback metrics associated with the uniform resource indicator to refine further searches of available web services.

2. The computer-implemented method of claim 1 , further comprising receiving another response from the web service server in response to the web service request.

3. The computer-implemented method of claim 2 , wherein the web service request is transmitted to the web service server via Internet or a local area network.

4. The computer-implemented method of claim 1 , further comprising calculating the metrics to determine an overall reputation regarding the web service server.

5. The computer-implemented method of claim 4 , further comprising transmitting the calculated metrics to the selector module prior to requesting a next available web service.

6. The computer-implemented method of claim 4 , wherein the metrics comprise response time and throughput of the web service server.

7. The computer-implemented method of claim 1 , further comprising modifying the web service request prior to transmitting the web service request to the web service server based on the uniform resource indicator.

8. A computer-implemented method performed in a client apparatus, comprising:

receiving, from a client module located on the client apparatus, a request for a web service server, the request identifying a class of commodity for a web service without indicating an endpoint for the web service;

requesting a selector module located on the client apparatus for an available web service from a list of web services corresponding to the class of commodity identified in the request, wherein the selector module utilizes feedback metrics received from a client module;

selecting a web service from the list based on global optimization of feedback metrics received from the client module and the available web service the list being received from an external registry of web services and pre-stored in the client apparatus to enable selection of a web service without querying the external registry;

determining updated feedback metrics based on the request and response interaction that indicates a performance of the selected web service related to an endpoint uniform resource indicator, and wherein the client module gathers the updated feedback metrics for the selected web service provided by the web service server to update the feedback metrics stored on the client apparatus;

updating the feedback metrics by the selector module on the client apparatus based on the updated feedback metrics associated with the endpoint uniform resource indicator to refine further searches of available web services;

determining the web service server for the client module, in order for the client module to transmit a web service request to the web service server, wherein a selection of the web service is provided by the selector module located on the client apparatus and is based on the updated feedback metrics and wherein the selector module utilizes the metrics received from the client module; and

transmitting the endpoint uniform resource indicator of the web service server to the client module.

9. The computer-implemented method of claim 8 , further comprising receiving the metrics associated with the web service server from the client module.

10. The computer-implemented method of claim 9 , wherein the metrics comprise a response time and a throughput of the web service server.

11. The computer-implemented method of claim 9 , further comprising based on the received metrics, updating metrics related to the web service server in a list of a plurality of web service servers.

12. The computer-implemented method of claim 11 , further comprising generating a heuristic based on the updated metrics in order to determine a next available web service server.

13. A client apparatus, comprising:

a non-linear adaptive processor; and

memory comprising a set of instructions, wherein the set of instructions is configured to cause the processor to

receive, from a client module located on the client apparatus, a request for a web service server, the request identifying a class of commodity for a web service without indicating an endpoint for the web service;

request a selector module located on the client apparatus for an available web service, from a list of web services corresponding to the class of commodity identified in the request, wherein the selector module utilizes feedback metrics received from a client module;

select a web service from the list based on global optimization of feedback metrics received from the client module and the available web service the list being received from an external registry of web services and pre-stored in the client apparatus to enable selection of a web service without querying the external registry;

determine updated feedback metrics based on the request and response interaction that indicates a performance of the selected web service related to an endpoint uniform resource indicator, wherein the client module gathers the updated feedback metrics for the selected web service provided by the web service server to update the feedback metrics stored on the client apparatus;

updating the feedback metrics by the selector module on the client apparatus based on the updated feedback metrics associated with the endpoint uniform resource indicator to refine further searches of available web services;

determine the web service server for the client module in order for the client module to transmit a web service request to the web service server, wherein a selection of the web service is provided by the selector module located on the client apparatus, wherein the selector module utilizes the updated feedback metrics received from the client module; and

transmit the endpoint uniform resource indicator of the web service server to the client module.

14. The apparatus of claim 13 , wherein the set of instructions is further configured to cause the processor to receive the metrics associated with the web service server from the client module.

15. The apparatus of claim 14 , wherein the metrics comprise a response time and a throughput of the web service server.

16. The apparatus of claim 14 , wherein the set of instructions is further configured to cause the processor to, based on the received metrics, update metrics related to the web service server in a list of a plurality of web service servers.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF THE PATENT ASSIGNMENT AGREEMENT DATED NOVEMBER 30, 2021 PREVIOUSLY RECORDED AT REEL: 058426 FRAME: 0791. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2022
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 058736/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 058426/0791 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2021
From: POWELL, CHAD ERIC
To: OPEN INVENTION NETWORK LLC
Reel/Frame 057494/0555 →