论坛首页 综合技术论坛

质疑 apache和yaws的性能比较(必看)

浏览 59888 次
该帖已经被评为良好帖
作者 正文
   发表时间:2007-08-21  
ejabberd人家就诚实号称并发3,5千 根据erlang的表现和即时通讯的数据特点 应该是很靠谱的。 
0 请登录后投票
   发表时间:2007-08-21  
mryufeng 写道
ejabberd人家就诚实号称并发3,5千 根据erlang的表现和即时通讯的数据特点 应该是很靠谱的。 


ejabberd虽说是即时通信server,但是我记得jabber协议本身是不依赖于长连接的。
0 请登录后投票
   发表时间:2007-08-21  
不管长短链接 3-5千的并发 他要收发的包是基本固定的 而处理包的能力才是系统的本质
0 请登录后投票
   发表时间:2007-08-22  
jabber协议是tcp协议,而且是基于xml的。
0 请登录后投票
   发表时间:2007-08-22  
要是纯静态页面可以去试试lighthttpd,ghttpd之类的,apache没有设计成为单进程,主要为了扩展性强。apache还有prefork模块,也是为了更好的稳定性。
0 请登录后投票
   发表时间:2007-08-22  
纯静态的意义也不大,我们的服务器使用的apache或者lighthttpd,机器的带宽正常的情况下都可以跑满带宽。


说到底,操作系统所谓的Process和Thread 也只不过是一个Context结构,用指针保存每个Stack Frame,然后按时间片切换Context.有任何区别吗?
区别还是有的,系统切换的代价比较高,而自己切换的效率比较高。
0 请登录后投票
   发表时间:2007-08-22  
七猫 写道
纯静态的意义也不大,我们的服务器使用的apache或者lighthttpd,机器的带宽正常的情况下都可以跑满带宽。


说到底,操作系统所谓的Process和Thread 也只不过是一个Context结构,用指针保存每个Stack Frame,然后按时间片切换Context.有任何区别吗?
区别还是有的,系统切换的代价比较高,而自己切换的效率比较高。


如果没有GC插一脚,的确没多大区别.有了GC,区别就是大大地了.
有没有GC本身也是没多大关系的,但是一旦有了non-deconstructive assign区别又是大大的.

0 请登录后投票
   发表时间:2007-08-22  
non-deconstructive assign和gc对这个切换的影响不大吧。
OS的切换要保存的上下文太多了。
0 请登录后投票
   发表时间:2007-08-22  
七猫 写道
non-deconstructive assign和gc对这个切换的影响不大吧。
OS的切换要保存的上下文太多了。

想象一下,一个清扫一次都要pause所有thread的GC会产生啥效果.
我的意识是说,即便是1:N的LWP如果存在GC,比如说让Java来实现erlang的特性,他的效率提高的也非常有限.
0 请登录后投票
   发表时间:2007-08-22  
os的开销主要在ring3->ring0->ring3这个流程太复杂了 随便一个系统调用就几个us, nginx分析一个完整的http请求才1us左右 所以越来越感觉单线程 单进程 在很多时候需要高效处理的时候很有用。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics