Title: Применение двойного кэширования и компрессии данных для повышения эффективности работы клиент-серверных приложений
Abstract: Many organizations use client-server applications in order to afford their employees and clients an opportunity to work with necessary information on their local computers. Delays of networking and data processing on the server side must not aggravate this process. The problem of accelerating client-server applications with caching and data transfer rate in-crease had not existed until client-server applications had became popular in wide area networks. But the problem of granting fast access to a central server and accelerating client-server applications has become important because of enterprise expan-sion, creation new service centers and remote desks in different regions of the world. The double caching (caching on the cli-ent side and on the server side) with periodical client/server cache update and the additional arrangements for accelerating da-ta transfer (compression and encryption) were proposed to solve the problem. The WAN accelerator has been developed based on this method. It is an independent program module. It is transparent for a client-server application that uses it. The accelerator contains two parts: the client part (accelerator-client) and the server part (accelerator-server). The TCP connection is established between the parts. The accelerator-client intercepts client HTTP requests, caches, compresses, encrypts them and then sends them to the accelerator-server. The accelerator-server receives the requests, decrypts, decompresses, caches them and then sends the restored HTTP requests to the server. The server processes the requests and generates the HTTP r e-sponses. The accelerator-server intercepts the responses, caches, compresses and encrypts them and after that sends them to the accelerator-client. The accelerator-client receives the responses, decrypts, decompresses and caches them and after that sends the restored HTTP responses to the client. If the identical HTTP request is intercepted by the accelerator-client, the HTTP response will be extracted from the accelerator-client cache (it is the best case because there is no need to send the HTTP request to the server and wait for the HTTP response) or from the accelerator-server cache (it is the worst case because there is a need to send the HTTP request to the accelerator-server and wait for the response from its cache but there is no need to send the HTTP request to the server and wait until the response will be generated). Test series were run to evaluate operating efficiency of the accelerator. The client and server mocks were used for this purpose. The client mock was sending the test HTTP requests and the server mock was receiving the requests and generating the test HTTP responses. The accelera-tor was intercepting the requests and responses. The HTTP requests and responses had the same structure like the HTTP r e-quests and responses used by the real client-server applications in the target organizations. The test series demonstrated that usage of the accelerator could decrease response time for 14–98 % depending on network bandwidth and identical re-quest\response repetition rate. The user could see that the client-server application had been working faster.
Publication Year: 2014
Publication Date: 2014-01-01
Language: en
Type: article
Access and Citation
AI Researcher Chatbot
Get quick answers to your questions about the article from our AI researcher chatbot