Intelligent network streaming and execution system for conventionally coded applications
First Claim
Patent Images
1. A method comprising:
- receiving, by a server system including a plurality of application service providers'"'"' servers, a request to stream a program from the server system to a client system;
performing load balancing across the server system, further comprising;
maintaining a server list that includes the plurality of application service providers'"'"' servers ordered according to response times of the plurality of application service providers'"'"' servers for fulfilling responses to client requests;
sending the server list to the client system, the server list used by the client system to determine to which of the plurality of application service providers'"'"' servers to send requests;
receiving, by at least one application service provider'"'"'s server of the plurality of application service providers'"'"' servers based on the server list, a plurality of requests, generated by the client system, to retrieve a plurality of program page segments of the program that are stored on the plurality of application service providers'"'"' servers, the plurality of requests forming a pattern of page segment requests;
retrieving the plurality of program page segments;
sending the plurality of program page segments to the client system;
retrieving, based on the pattern of page segment requests, a specific program page segment, stored on the at least one application service provider'"'"'s server of the plurality of application service providers'"'"' servers, to be sent to the client system.
5 Assignments
0 Petitions
Accused Products
Abstract
In a system that partitions an application program into page segments, a minimal portion of the application program is installed on a client system. The client prefetches page segments from the application server or the application server pushes additional page segments to the client. The application server begins streaming the requested page segments to the client when it receives a valid access token from the client. The client performs server load balancing across a plurality of application servers. If the client observes a non-response or slow response condition from an application server or license server, it switches to another application or license server.
-
Citations
19 Claims
-
1. A method comprising:
-
receiving, by a server system including a plurality of application service providers'"'"' servers, a request to stream a program from the server system to a client system; performing load balancing across the server system, further comprising; maintaining a server list that includes the plurality of application service providers'"'"' servers ordered according to response times of the plurality of application service providers'"'"' servers for fulfilling responses to client requests; sending the server list to the client system, the server list used by the client system to determine to which of the plurality of application service providers'"'"' servers to send requests; receiving, by at least one application service provider'"'"'s server of the plurality of application service providers'"'"' servers based on the server list, a plurality of requests, generated by the client system, to retrieve a plurality of program page segments of the program that are stored on the plurality of application service providers'"'"' servers, the plurality of requests forming a pattern of page segment requests; retrieving the plurality of program page segments; sending the plurality of program page segments to the client system; retrieving, based on the pattern of page segment requests, a specific program page segment, stored on the at least one application service provider'"'"'s server of the plurality of application service providers'"'"' servers, to be sent to the client system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a server side monitor configured to perform load balancing across a plurality of application service providers'"'"' servers by maintaining a server list that includes the plurality of application service providers'"'"' servers ordered according to response times of the plurality of application service providers'"'"' servers for fulfilling responses to client requests, the server list used by a client system to determine to which of the plurality of application service providers'"'"' servers to send requests; a server system, including the plurality of application service providers'"'"' servers, configured to; send the server list to the client system, the server list used by the client system to determine to which of the plurality of application service providers'"'"' servers to send requests; receive from the client system, according to the server list, a plurality of requests to retrieve a plurality of program page segments of a program stored on the plurality of application service providers'"'"' servers, the plurality of requests forming a pattern of page segment requests; retrieve the plurality of program page segments; send the plurality of program page segments to the client system; retrieve, based on the pattern of page segment requests, a specific program page segment, stored on at least one application service provider'"'"'s server of the plurality of application service providers'"'"' servers, to be sent to the client system. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system comprising:
-
means for receiving a request to stream a program from a server system, including a plurality of application service providers'"'"' servers, to a client system; means for performing load balancing across the server system, further comprising; means for maintaining a server list that includes the plurality of application service providers'"'"' servers ordered according to response times of the plurality of application service providers'"'"' servers for fulfilling responses to client requests; means for sending the server list to the client system, the server list used by the client system to determine to which of the plurality of application service providers'"'"' servers to send requests; means for receiving, by at least one application service provider'"'"'s server of the plurality of application service providers'"'"' servers based on the server list, a plurality of requests, generated by the client system, to retrieve a plurality of program page segments of the program that are stored on the plurality of application service providers'"'"' servers, the plurality of requests forming a pattern of page segment requests; means for retrieving the plurality of program page segments; means for sending the plurality of program page segments to the client system; means for retrieving, based on the pattern of page segment requests, a specific program page segment, stored on the at least one application service provider'"'"'s server of the plurality of application service providers'"'"' servers, to be sent to the client system.
-
Specification