Scaling Instant Messaging Communication Services: A Comparison of Blocking and Non-Blocking Techniques

作者: Leigh Griffin , Kieran Ryan , Eamonn de Leastar , Dmitri Botvich

DOI: 10.4018/JACI.2012070101

关键词:

摘要: Designing innovative communications services that scale to facilitate potential new usage patterns can pose significant challenges. This is particularly the case if these are be delivered over existing protocols and interoperate with legacy services. work explores design choices for such a service: large message delivery Instant Messaging users. In particular authors explore throughput, accuracy server load several alternative implementation strategies. These strategies focus on approaches concurrency, best practice in current emerging techniques thoroughly benchmarked. Specifically, conventional Java Executor approach compared functional realised through Scala its Actors framework. could termed "blocking I/O" technology. A third has also been measured-a "non-blocking based an Virtual Machine approaches-employing Node.js Javascript. We believe some of results startling.

参考文章(15)
Dong Liu, Ralph Deters, The Reverse C10K Problem for Server-Side Mashups international conference on service oriented computing. pp. 166- 177 ,(2009) , 10.1007/978-3-642-01247-1_16
John Allen, Anatomy of LISP ,(1980)
B. Long, B.W. Long, Formal specification of Java concurrency to assist software verification international parallel and distributed processing symposium. pp. 136- ,(2003) , 10.1109/IPDPS.2003.1213262
Philipp Haller, Martin Odersky, Scala Actors: Unifying thread-based and event-based programming Theoretical Computer Science. ,vol. 410, pp. 202- 220 ,(2009) , 10.1016/J.TCS.2008.09.019
Leigh Griffin, Eamonn de Leastar, Dmitri Botvich, Dynamic shared groups within XMPP: An investigation of the XMPP group model integrated network management. pp. 634- 637 ,(2011) , 10.1109/INM.2011.5990589
Christopher Foley, Gemma Power, Leigh Griffin, Chen Chen, Niall Donnelly, Eamonn De Leastar, None, Service Group Management facilitated by DSL driven policies in embedded middleware international symposium on computers and communications. pp. 483- 488 ,(2010) , 10.1109/ISCC.2010.5546775
Stefan Tilkov, Steve Vinoski, Node.js: Using JavaScript to Build High-Performance Network Programs IEEE Internet Computing. ,vol. 14, pp. 80- 83 ,(2010) , 10.1109/MIC.2010.145
Zhen Xiao, Lei Guo, John Tracey, Understanding Instant Messaging Traffic Characteristics international conference on distributed computing systems. ,vol. 1, pp. 51- 51 ,(2007) , 10.1109/ICDCS.2007.149
MinSeong Kim, Andy Wellings, Using the executor framework to implement asynchronous event handling in the RTSJ Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems - JTRES '10. pp. 16- 25 ,(2010) , 10.1145/1850771.1850774