Browse > Article
http://dx.doi.org/10.6109/jkiice.2011.15.3.660

JPE : Java Push Engine Supporting Asynchronous Communication Based on AJAX  

Park, Jong-Eun (울산대학교 전기공학부)
Kwon, O-Jin (울산대학교 전기공학부)
Lee, Hong-Chang (울산대학교 전기공학부)
Lee, Myung-Joon (울산대학교 전기공학부)
Abstract
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.
Keywords
Server Push; Push Engine; AJAX; Long Polling; Epoll; JPE;
Citations & Related Records
Times Cited By KSCI : 2  (Citation Analysis)
연도 인용수 순위
1 "http://en.wikepedia.org/wiki/Reactor_pattern." Reactor Pattern
2 "http://en.wikepedia.org/wiki/XHR." XML HttpRequest
3 "http://en.wikepedia.org/wiki/JSON." JSON
4 김영란 "XML DTD의 효율적인 검색을 위한 구조 정보 및 인덱스 메카니즘," 한국컴퓨터정보학회논문지, 제 8권, 제 3호, 80-86쪽, 2003년 9월.
5 Dave Crane, Phil McCarthy, "Comet and Reverse Ajax: The Next-Generation Ajax 2.0," 1st Edition, Apress, 2008
6 "http://en.wikipedia.org/wiki/Comet_(programming)," Comet Programming
7 "http://en.wikipedia.org/wiki/Edge_triggered_ interrupt," Edge-triggered
8 "http://en.wikipedia.org/wiki/Chunked_transfer_ encoding." Chunked transfer encoding
9 "http://en.wikipedia.org/wiki/Edge_triggered_ interrupt," Level-triggered
10 Aaron Newton, "MooTools Essentials: The Official MooTools Reference for JavaScript and Ajax Development," 1st Edition, Apress, 2008.
11 "http://www.adobeflex.co.kr/aboutflex/down/2.pdf," Adobe Flex 2
12 이홍창,김보현,오훈,이명준 "BlazeDS에서의 효과적인 Push 서비스를 위한 메시지 필터링," 한국 컴퓨터정보학회논문지, 제15권, 제 6호, 37-44쪽, 2010년 6월.
13 "http://www.adobe.com/products/air/," Adobe AIR
14 "http://www.ape-project.org/," APE
15 Cui Bin, "Realization of EPOLL-based Linux Online Games Server," CONTROL AND AUTOMATION, Weijisuanji Xinxi Zazhishe, v.172, pp.64-66, 2006
16 Sachin Deshpande, Wenjun Zeng, "HTTP streaming of JPEG2000 images," in the Proceeding of ITCC'01, IEEE Comput. Soc, pp.15-19, 2001.
17 "http://ajaxpatterns.org/HTTP_Streaming," HTTP Streaming.
18 "http://www.pushlets.com/," Pushlet
19 "http://opensource.adobe.com/wiki/display/blazeds/ BlazeDS," Adobe BlazeDS.
20 "http://en.wikipedia.org/wiki/Push_technology," Push Technology.
21 어세룡, "웹2.0을 위한 Ajax 플랫폼," 정보과학회지, 한국정보과학회, v.26 no.9, pp.47-57, 2008.
22 "http://en.wikipedia.org/wiki/Ajax," Ajax
23 "http://en.wikipedia.org/wiki/Long_polling." Long Polling
24 Shishir Gundavaram, "CGI Programming on the World Wide Web," 1st Edition, O'Reilly Media, 1996.