• Title/Summary/Keyword: Epoll

Search Result 2, Processing Time 0.02 seconds

JPE : Java Push Engine Supporting Asynchronous Communication Based on AJAX (JPE : AJAX 기반의 비동기 통신을 지원하는 Java Push Engine)

  • Park, Jong-Eun;Kwon, O-Jin;Lee, Hong-Chang;Lee, Myung-Joon
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.15 no.3
    • /
    • pp.660-672
    • /
    • 2011
  • The Web is widely used to share information, utilizing the client-server model. In the client-server model, since the server only responds according to explicit requests from the client, the model seems hard to support sharing of massive information rapidly changing in today's Internet. The technology known as Server Push enables the server to actively provide information to clients without explicit requests from the clients using Web pages. Although various studies have been done to realize the Server Push technologies, there are many problems in the development of push application without push engines which support infrastructures for the effective development of push application. In this paper, we develop JPE(Java Push Engine) which presents the effective support for push services over the Internet. JPE is composed of two main components: the JPE Core supporting Epoll and the JPE Library supporting asynchronous communication. In addition, JPE defines various push functions and provides programming interfaces supporting the functions. Push applications developed using JPE effectively manages client connections with Epoll mechanism, providing push services through AJAX-based asynchronous communication.

A Performance Improvement of Linux TCP Networking by Data Structure Reuse (자료 구조 재사용을 이용한 리눅스 TCP 네트워킹 성능 개선)

  • Kim, Seokkoo;Chung, Kyusik
    • KIPS Transactions on Computer and Communication Systems
    • /
    • v.3 no.8
    • /
    • pp.261-270
    • /
    • 2014
  • As Internet traffic increases recently, much effort has been put on improving the performance of a web server. In addition to hardware side solutions such as replacement by high-end hardware or expansion of the number of servers, there are software side solutions to improve performance. Recent studies on these software side solutions have been actively performed. In this paper, we identify performance degradation problems occurring in a conventional TCP networking reception process and propose a way to solve them. We improve performance by combining three kinds of existing methods for Linux Networking Performance Improvement and two kinds of newly proposed methods in this paper. The three existing methods include 1) an allocation method of a packet flow to a core in a multi-core environment, 2) ITR(Interrupt Throttle Rate) method to control excessive interrupt requests, and 3) sk_buff data structure recycling. The two newly proposed methods are fd data structure recycling and epoll_event data structure recycling. Through experiments in a web server environment, we verify the effect of our two proposed methods and its combination with the three existing methods for performance improvement, respectively. We use three kinds of web servers: a simple web server, Lighttpd generally used in Linux, and Apache. In a simple web server environment, fd data structure recycling and epoll_event data structure recycling bring out performance improvement by about 7 % and 6%, respectively. If they are combined with the three existing methods, performance is improved by up to 40% in total. In a Lighttpd and an Apache web server environment, the combination of five methods brings out performance improvement by up to 36% and 20% in total, respectively.