在Linux/Unix上架设ASP.NET WEB服务器,有两个可选方式,一种是Mono+XSP,一种是Mono+Jexus,其它的方式,比如 Apache+mod_mono、Nginx+FastCgi 等等,其实质与XSP并无区别,都是使用Mono所提供的ASP.NET处理模块:Mono.WebServer名字空间实现对ASP.NET网站的支 持。Jexus不但具有跨平台ASP.NET服务器这样的标志性特征,同时还拥有内核级的安全监控、入侵检测、URL重写、无文件路由等一系列重要功能和 专有特性。那么XSP和Jexus有什么区别呢:
- 速度方面: 对于ASP.NET网页,大压力访问时Jexus处理速度更快; 对于静态文件,Jexus远快于XSP,而且对磁盘的要求和影响小N倍;
- 功能方面: XSP是以ASP.NET测试工作开发的,功能单调,而Jexus是作为生产环境使用的真实的WEB服务开发的,功能全面,因此,xsp与Jexus在功能上可比性
- 稳定性方面: Jexus有良好的容错和自动纠错能力,可以长期不间断运行,而XSP是单进程程序,没有任何自动纠错机制,无法保持不间断运行。
- 安全性方面: Jexus有关键的入侵检测功能,XSP没有任何安全检测功能,没有可比性;
- 多站点支持: XSP支持一站,Jexus支持任意多网站。
今天将一篇介绍Jexus的文章发布在InfoQ:LINUX ASP.NET WEB服务器:JEXUS,Jexus for linux 有如下特点:
- 支持多种操作系统:Jexus最初的设计目标是“跨平台的ASP.NET WEB服务器”,由于在Windows系统上,IIS已经是ASP.NET的优秀平台,所以,当前的Jexus以支持Linux和FreeBSD等非 Windows系统为主要设计目标。正因为这个原因,就Linux/FreeBSD等平台的ASP.NET建设而言,Jexus具有特别重大的意义。
- 高性能:“高性能”是Jexus的重要的设计目标。虽然Jexus基于Mono环境运行,但Jexus并非全部由Mono的.NET组件构成,对 于涉及性能的关键代码,Jexus非常巧妙地大量采用了Linux/Unix本身的优秀特性,从代码层保证了Jexus的性能优势。
同 时,Jexus的框架特征也为高性能提供了基础保证。Jexus不象XSP那样,纯HTML也需要经过ASP.NET处理,更不象Apache和 Nginx等服务器,需要通过插件的形式间接地对ASP.NET进行支持,Jexus把HMTL静态文件处理模块、ASP.NET处理模块、静态文件高速 缓存机制、epoll/poll数据传输机制等进行了高度集成,从架构本身入手,最大限度地提高WEB服务器的处理能力和传输速度。 - 安全性:Jexus内核含有安全监控机制,绝大多数恶意访问在进入网站前就会被Jexus直接禁止,这是Jexus有别于其它WEB服务器的又一大特色,所以,Jexus特别适合那些对安全要求较高的企业网站或政府网站使用。
- 稳定性:从运行机制而言,Jexus系统中,有专门检测工作进程执行状态的管理单元,任何一个进程退出或者任何一个ASP.NET网站应用程序域 退出,被会被管理单元发现并得到重启,从而保证了Jexus能够7*24小时不间断工作;从程序本身而言,Jexus程序代码力求简洁,BUG很少,同 时,Jexus的每个版本在正式发布之前,都要经过严格的压力测试,影响稳定性的因素,几乎在正式发布之前即已被全部排除。
- 功能强大:Jexus支持URL重写,支持多目标服务器的反向代理,支持PHP,支持GZIP压缩传输,并且,可以利用不同端口、不同虚拟路径、不同域名设置任意数量的网站,这些功能要素,表明了Jexus是一款功能完整而强劲的WEB服务器。
- 安装、配置、操作极为简单,服务社区化,各种问题能得到快速的处理,有良好的后续服务支撑能力。
Mono项目从Mono于2004年7月30日发布了1.0版本,Jexus的作者“宇内流云”开发Jexus的最初立意是因为他要在linux平台建asp.net网站,但是,尝试了很多方法后,总感到不满意,所以才自己亲自开发一个出来。
2008年10月18日,Jexus 1.0版正式发布,随后,Jexus就逐渐进入了实际应用, JEXUS技术社区 和 杰兴网 最先采用Jexus在Linux系统上架设ASP.NE服务器,让其得到了实践的检验。当前,一些企业网站、政府网站也开始基于Linux+Jexus进行建设。网友大哲在论坛中分享了使用JEXUS在SUSE 10企业版下开发的ASP.NET项目 中天证券 ,有兴趣的朋友可以通过JEXUS技术社区的下面的帖子了解详细的信息。
- suse10企业版下asp.net项目开发部署心得(一)
- suse10企业版下asp.net项目开发部署心得(二)
- suse10企业版下asp.net项目开发部署心得(三)
- suse10企业版下asp.net项目开发部署心得(四)
- suse10企业版下asp.net项目开发部署心得(五)
下面截2张图给大家证明下目前这些网站确实使用的Jexus运行的ASP.NET程序,大家也可以自己用HttpWatch之类的工具自行检查,第一个图是中天证券http://www.stockren.com/:
第二个图是四川蓬溪县人民政府网站http://www.pengxi.gov.cn
随着Jexus应用的普及和深入,Jexus技术支持社区日趋活跃,热心网友针对不同平台发布了许多关于Jexus的技术文章,下面收集的是最近写的:
- Ubuntu Server上搭建可用于生产环境的ASP.NET服务器
- FreeBSD 8.0搭建nginx+jexus+php+asp.net+mysql脚本
- CentOS yum mono 支持asp.net
- CentOS编译Jexus4+Mono2.8
- ASP.NET也可以运行于UNIX/LINUX平台:Jexus webserver
大家可以关注我的微博上的Mono 话题:http://t.qq.com/k/Mono,到JEXUS技术社区 和 Jexus的QQ群 103810355 去了解更详细的信息。
Jexus v4.1版已于2011年1月1日正式发布,支持Linux、FreeBSD,支持Mono2.4.3-2.8.1,支持ASP.NET 2.0-3.5,较之旧版本,V4.1在性能、稳定性等方面都有很大的提高,处理静态文件的速度是V4.0版的1.2-1.5倍,是3.x版的 1.8-2.3倍,压力测试表明,V4.1整体素质表现突出,是一款优秀的ASP.NET WEB服务器。 下载地址 linux.j66.net/down/jexus-4.1.tar.gz
国外专门介绍Mono的安装、配置等问题的网站 http://www.integratedwebsystems.com/