Maintaining state of a web page
Systems and methods pertaining to maintaining and provisioning state information of user sessions are disclosed. In one embodiment, a system includes a plurality of web browsing engines adapted to run in an operating system instance, with the plurality of web browsing engines adapted for remote interaction via a corresponding plurality of devices. In the same embodiment, the system also includes a plurality of state manager engines corresponding to the plurality of web browsing engines. In the same embodiment, the plurality of state manager engines are adapted to maintain a corresponding plurality of browsing state sessions, with each browsing state session comprising a respective first portion of a respective webpage sent for remote viewing.
1. A system for maintaining a state of a webpage on a server, the webpage displayed on a client device, the system comprising:
a processor and a memory, the memory comprising instructions when partly executed by the processor, cause the system to:
receive a request for a part of the webpage from the client device;
determine an image corresponding to the part of the requested webpage, the determined image not including an image of the whole webpage;
transmit the determined image to the client device;
adjust a sample interval to a value higher than a previous value of the sample interval responsive to determining that the requested webpage has not changed for a threshold time period;
determine a second image corresponding to the part of the requested webpage the sample interval after the determined image;
transmit the determined second image to the client device; and
store, at the server, state information associated with the part of the webpage corresponding to the transmitted image, the state information including a cookie associated with the webpage or the client device.
2. The system of claim 1 , wherein the stored state information comprises a vertical and a horizontal coordinate associated with the part of the webpage.
3. The system of claim 1 , wherein the stored state information comprises a zoom factor associated with the part of the webpage.
4. The system of claim 1 , wherein the client device stores a second state information corresponding to the determined image, and the client device queries the second state information to determine whether a local copy of a desired part of the webpage exists at the client device before requesting the desired part from the system.
5. The system of claim 1 , wherein the request is received in response to a cursor movement at the client device.
6. The system of claim 1 , wherein the request is received in response to a keyboard input at the client device.
7. The system of claim 1 , wherein the sample interval is also adjusted based on an amount of bandwidth available to the client device for receiving network data.
8. A computer implemented method for maintaining a state of a webpage on a server, the webpage displayed on a client device, the method comprising:
receiving a request for a part of the webpage from the client device;
determining an image corresponding to the part of the requested webpage, the determined image not including an image of the whole webpage;
transmitting the determined image to the client device;
adjusting a sample interval to a value higher than a previous value of the sample interval responsive to determining that the requested webpage has not changed for a threshold time period;
determining a second image corresponding to the part of the requested webpage the sample interval after the determined image;
transmitting the determined second image to the client device; and
storing, at the server, state information associated with the part of the webpage corresponding to the transmitted image, the state information including a cookie associated with the webpage or the client device.
9. The computer-implemented method of claim 8 , wherein the stored state information comprises a vertical and a horizontal coordinate associated with the part of the webpage.
10. The computer-implemented method of claim 8 , wherein the stored state information comprises a zoom factor associated with the part of the webpage.
11. The computer-implemented method of claim 8 , wherein the client device stores a second state information corresponding to the determined image, and the client device queries the second state information to determine whether a local copy of a desired part of the webpage exists at the client device before requesting the desired part from the system.
12. The computer-implemented method of claim 8 , wherein the request is received in response to a cursor movement at the client device.
13. The computer-implemented method of claim 8 , wherein the request is received in response to a keyboard input at the client device.
14. The computer-implemented method of claim 8 , wherein the sample interval is also adjusted based on an amount of bandwidth available to the client device for receiving network data.
15. A non-transitory computer readable medium including programming instructions for maintaining a state of a webpage on a server, the webpage displayed on a client device, the programming instructions when executed perform steps comprising:
receiving a request for a part of the webpage from the client device;
determining an image corresponding to the part of the requested webpage, the determined image not including an image of the whole webpage;
transmitting the determined image to the client device;
adjusting a sample interval to a value higher than a previous value of the sample interval responsive to determining that the requested webpage has not changed for a threshold time period;
determining a second image corresponding to the part of the requested webpage the sample interval after the determined image;
transmitting the determined second image to the client device; and
storing, at the server, state information associated with the part of the webpage corresponding to the transmitted image, the state information including a cookie associated with the webpage or the client device.
16. The non-transitory computer readable medium of claim 15 , wherein the stored state information comprises a vertical and a horizontal coordinate associated with the part of the webpage.
17. The non-transitory computer readable medium of claim 15 , wherein the stored state information comprises a zoom factor associated with the part of the webpage.
18. The non-transitory computer readable medium of claim 15 , wherein the client device stores a second state information corresponding to the determined image, and the client device queries the second state information to determine whether a local copy of a desired part of the webpage exists at the client device before requesting the desired part from the system.
19. The non-transitory computer readable medium of claim 15 , wherein the request is received in response to a cursor movement at the client device.
20. The non-transitory computer readable medium of claim 15 , wherein the request is received in response to a keyboard input at the client device.
21. The non-transitory computer readable medium of claim 15 , wherein the request is received in response to a mouse click at the client device.
22. The non-transitory computer readable medium of claim 15 , wherein the sample interval is also adjusted based on an amount of bandwidth available to the client device for receiving network data.