> Linux教程 >

推荐一个在Linux/Unix上架设ASP.NET的 WEB服务器--Jexus

在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有什么区别呢:

  1. 速度方面: 对于ASP.NET网页,大压力访问时Jexus处理速度更快; 对于静态文件,Jexus远快于XSP,而且对磁盘的要求和影响小N倍;
  2. 功能方面:   XSP是以ASP.NET测试工作开发的,功能单调,而Jexus是作为生产环境使用的真实的WEB服务开发的,功能全面,因此,xsp与Jexus在功能上可比性
  3. 稳定性方面: Jexus有良好的容错和自动纠错能力,可以长期不间断运行,而XSP是单进程程序,没有任何自动纠错机制,无法保持不间断运行。
  4. 安全性方面: Jexus有关键的入侵检测功能,XSP没有任何安全检测功能,没有可比性;
  5. 多站点支持: XSP支持一站,Jexus支持任意多网站。

今天将一篇介绍Jexus的文章发布在InfoQ:LINUX ASP.NET WEB服务器:JEXUS,Jexus for linux 有如下特点:

  1. 支持多种操作系统:Jexus最初的设计目标是“跨平台的ASP.NET WEB服务器”,由于在Windows系统上,IIS已经是ASP.NET的优秀平台,所以,当前的Jexus以支持Linux和FreeBSD等非Windows系统为主要设计目标。正因为这个原因,就Linux/FreeBSD等平台的ASP.NET建设而言,Jexus具有特别重大的意义。
  2. 高性能:“高性能”是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服务器的处理能力和传输速度。
  3. 安全性:Jexus内核含有安全监控机制,绝大多数恶意访问在进入网站前就会被Jexus直接禁止,这是Jexus有别于其它WEB服务器的又一大特色,所以,Jexus特别适合那些对安全要求较高的企业网站或政府网站使用。
  4. 稳定性:从运行机制而言,Jexus系统中,有专门检测工作进程执行状态的管理单元,任何一个进程退出或者任何一个ASP.NET网站应用程序域退出,被会被管理单元发现并得到重启,从而保证了Jexus能够7*24小时不间断工作;从程序本身而言,Jexus程序代码力求简洁,BUG很少,同时,Jexus的每个版本在正式发布之前,都要经过严格的压力测试,影响稳定性的因素,几乎在正式发布之前即已被全部排除。
  5. 功能强大:Jexus支持URL重写,支持多目标服务器的反向代理,支持PHP,支持GZIP压缩传输,并且,可以利用不同端口、不同虚拟路径、不同域名设置任意数量的网站,这些功能要素,表明了Jexus是一款功能完整而强劲的WEB服务器。
  6. 安装、配置、操作极为简单,服务社区化,各种问题能得到快速的处理,有良好的后续服务支撑能力。

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/:

2000

第二个图是四川蓬溪县人民政府网站http://www.pengxi.gov.cn

2001

随着Jexus应用的普及和深入,Jexus技术支持社区日趋活跃,热心网友针对不同平台发布了许多关于Jexus的技术文章,下面收集的是最近写的:

  1. Ubuntu Server上搭建可用于生产环境的ASP.NET服务器
  2. FreeBSD 8.0搭建nginx+jexus+php+asp.net+mysql脚本
  3. CentOS yum mono 支持asp.net
  4. CentOS编译Jexus4+Mono2.8
  5. ASP.NET也可以运行于UNIX/LINUX平台:Jexus webserver
(责任编辑:IT)