浏览 780 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2008-02-24 关键字: stackless python pypy web server ruby cerise
也许 HTTP Server 的实现并不是很难。
很多语言的开发库都自带有内置的 HTTP Server。 Ruby开发框架 Cerise 也自带有一个Ruby开发的 Web Server。 Python语言很早就有了虚拟机。 很多Python Web开发框架都带有一个内置的 Web Server。 这些 Web Server 都是基于 Python 语言开发的。 我没有发现一个基于 Stackless Python 开发的 Web Server。 据说 Stackless Python 的并发性更好。理论上应该有不少基于 Stackless Python 的 Web Server。 也有这样一种可能,Python程序语言可以直接在 Stackless Python平台上直接编译运行。 Python 开发的 Web Server程序可能直接在 Stackless Python 上直接运行。 查看了 Stackless Python 的文档,Stackless Python 不仅实现上取消了运行栈,而且引入了新的线程协同关键字。整个线程模型都换了。API,关键字,使用方法都换了。 还看到这样一种说法。PyPy 是 Stackless Python 的继承者。PyPy 好像是一种把 Python等动态语言翻译为 C 语言/底层语言的项目。 我对 Stackless Python, PyPy 了解有限。从网上信息分析不出个所以然。 想听听大家的意见。 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
| 返回顶楼 | |
|
时间:2008-02-25
“并发性更好” 这个我不认同,它带来的只是更容易的并发程序编写方式,并不意味着更好的并发性能和并发能力。比如yaws比ngnix这种架构在并发能力上就没什么优势,性能上也不可能更高,当然并发能力比起apache这种架构自然是有优势了。
Stackless Python只看了点皮毛,说不清,这有个项目,里面有个httpd的实现,不知道能不能达到产品级,估计还只是个demo。 http://wiki.secondlife.com/wiki/Eventlet |
|
| 返回顶楼 | |
|
时间:2008-02-25
ngnix的架构是如何的?也是如同ErLang ,Stackless Python 那样,自己定义线程管理的 Green Thread 模型?
Eventlet httpd.py : HTTP server written by Donovan. Should probably be merged with wsgi 如果 Python, Ruby 语言本身开发的 HTTP Server 能够达到很高的并发和速度,那么,无论从开发速度和运行速度方面来说,都是首选。 |
|
| 返回顶楼 | |
|
时间:2008-02-25
buaawhl 写道 ngnix的架构是如何的?也是如同ErLang ,Stackless Python 那样,自己定义线程管理的 Green Thread 模型? Eventlet httpd.py : HTTP server written by Donovan. Should probably be merged with wsgi 如果 Python, Ruby 语言本身开发的 HTTP Server 能够达到很高的并发和速度,那么,无论从开发速度和运行速度方面来说,都是首选。 关于Nginx,看这个介绍 http://mryufeng.javaeye.com/blog/130888 引用 Nginx采用master-slave模型, 能够充分利用SMP的优势
它并不是使用Green Thread之类的设计,而是目前高性能服务器惯用的事件驱动模型 ps.个人认为对HTTP Server这种基础设置来说,Erlang之类的动态语言是占不了优势的,在应用层面才是正道啊。布娃娃老大可以关心一下CouchDB之类的应用 |
|
| 返回顶楼 | |
|
时间:2008-02-25
Nginx介绍 http://mryufeng.javaeye.com/blog/130888
我好像以前看过这篇介绍。不错。 Poll, 分阶段资源分配技术, 减少工作进程在磁盘I/O的阻塞延迟 关键可能在 分阶段资源分配技术。 ---------------------------- 动态语言 HTTP Server 的好处在于 Server 和 Action 都可以运行在同一个 VM 中。而不用像 CGI/FastCGI 那样分别运行于两个不同的进程。节省了一步把处理结果传回给Server的步骤。 动态语言 HTTP Server的另一个好处是,可以更加容易地实现一些Request Dispatch/Redirect 之类的高级控制需求。 少了两个进程之间的鸿沟,做很多事情都比较方便。 因此想找到一个性能上过得去的动态语言HTTP Server,并且该动态语言还适合做Web。 ----------------------------- http://sp42.javaeye.com/blog/151025 用Erlang开发的文档数据库系统CouchDB ErLang适合处理文档吗?这是个值得参考的项目。 |
|
| 返回顶楼 | |
|
时间:2008-03-21
|
|
| 返回顶楼 | |
|
时间:2008-04-09
Eurasia:国人web framework,好像就是使用Stackless Python的。现在最新版本3.0.0alpha3.
还没学习呢。据官方介绍: Eurasia3 被設計成用于解決百萬級同時在线的長連接用戶數量的 HTTP 服務器, 或者每秒種處理上萬次 CGI 請求的常規 Web 應用服務器。 |
|
| 返回顶楼 | |
|
时间:2008-04-09
Eurasia项目:http://code.google.com/p/eurasia/
|
|
| 返回顶楼 | |










