Threaded vs Evented Servers
在服务器端,目前共有两种方法处理并发请求:
(1)Threaded线程类服务器是使用多个并行线程来处理请求,每个线程处理一个客户端请求,典型的是J2EE或JavaEE服务器。
(2)Evented事件类服务器则是循环运行一个事件,用来处理所有连接客户端信息。
线程类服务器受限于CPU和线程界限,而事件类服务器并不受限于线程方面约束,因为它只用一个线程,只是受限于CPU能力。
文章对多个情况下两种模式性能比较,当我们需要执行一个后台服务,有高延迟high-latency(无高一致性要求场合),那么事件类服务器模式的性能要好些。
最后一个测试情况是long polling客户端,客户端发出长时间拉请求,也就是通常的AJAX发出的异步
请求,事件类服务器模式要更好些。
转贴这篇文章想说明的是:jdonframework的domain events采取的是Evented事件类服务器模式,这种模式非常适合AJAX发出的轮询或高延迟的异步
请求,这种模式对CPU负载低,不象传统同步多线程模式会Block堵塞住CPU。
适合事件类服务器模式是一些无需分享状态的应用,或者对状态的一致性要求比较低的应用,或者可以说对状态高一致性要求的避免使用事件类服务器模式。
原文:http://www.jdon.com/jivejdon/thread/39238
分享到:
相关推荐
Multi-Threaded Game Engine Design
资源分类:Python库 所属语言:Python 资源全名:threaded-4.0.8.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
此软件包是“More Effective Coroutines”的升级,它使您可以使用与以前相同的yield return语法在主线程和外部线程之间来回切换。 通过允许您编写一个协程,该协程可以收集所需的所有数据,然后切换到一个单独的线程...
MTTTY (Multi-Threaded TTY) 是一个容易使用的高效 Win 32 串行通信程序 文章“Serial Communications in Win32”提到的工具 类似超级终端中串口部分的程序,很不错 这个已经移植到vs2008上面的版本,debug 文件夹有...
ActiveTcl8.4.16.0.282109-win32-ix86-threaded
this is a simple forum
This chapter describes the Thread extension for creating multi-threaded Tcl scripts.
ActiveTcl8.6.3.1.298624-win32-ix86-threaded,可以用来学习tcl语言
实现有针对性的留言。也就是可以针对某个留言进行留言,这个留言不出现在最底部,而是在所针对的留言的下方。
ActiveTcl8.6.1.0.297577-linux-ix86-threaded.tar.gz
ActiveTcl8.4.11.2.201775-win32-ix86-threaded.exe 包含了很多库,另外是支持win32,32bit的老版本
Multithreaded, libevent-based socket server. http://sourceforge.net/p/libevent-thread/code/ci/master/tree/README
Multi-threaded Client/Server Socket Class
rknn-multi-threaded-nosigmoid.zip
GMW 14657 Preapplied Adhesive for Threaded Fasteners.pdf
tcl/tk active 环境 8.6.2.0
机械设计:chapter four threaded joints.ppt
Multi-Threaded.Game.Engine.Design
ActiveTcl8.6,Tcl脚本运行环境,32位及64位 ActiveTcl8.6,Tcl脚本运行环境,32位及64位