转自http://www.cnblogs.com/xiaodiejinghong/archive/2013/04/05/3000404.html

3、Jexus的操作

经过两个章节关于Jexus的介绍,相信读者对于Jexus已经有了一个概念上的认识,从这个章节开始,接下来我们会对Jexus的使用进行实操,并通过操作Jexus时产生的现象进行讨论,从而进一步的了解并学会使用Jexus。

Linux软件包有一个做得非常好的地方,那就是对于这款软件的使用手册、帮助文档往往都会存在软件本身之中,像“有问题问男人”(man命令)、“--help”等命令都能够提供快速的使用方法查阅,同样,关于Jexus的使用方法我们也可以通过Jexus软件包中的“readme”查阅得到。

我们先看一下Jexus目录中有些什么东西:

里面也没有什么东西,包括四个文件夹(蓝色那种),六个脚本文件(绿色那种)和一些的其他文件(白色那种)。在这个章节里,我们介绍的是Jexus的操作,实际上就是对于Jexus脚本的操作和介绍。

Jexus提供了六个操作脚本(针对5.3之前的版本,5.3版本已把所有jws脚步融合到jws中,使用方法为./jws 参数),他们的名称和功能分别是:

  jws.start: 启动Jexus;(如果需要开机自启动的,可以把脚本的全路径[包括脚步本身]添加到/etc/rc.local中;5.3中已改为:jws start)
  jws.restart: 重启Jexus,如果命令后边加网站名作为参数,那么就表示启动或重启指定的网站;(5.3中已改为:jws restart)
  jws.stop: 停止Jexus,如果命令后边加网站名作为参数,那么就表示停止指定的网站;(5.3中已改为:jws stop)
  jws.regsvr: 注册jexus所需要的全局程序集(本命令只在安装或更新jexus后才用,而且必须用;5.3中已改为:jws regsvr)。
  state.start: 启动Jexus提供的ASP.NET状态服务;(该脚本在Jesux 5.3 中已经除去,Jexus默认开启)
  state.stop: 停止Jexus提供的ASP.NET状态服务;(该脚本在Jesux 5.3 中已经除去,Jexus默认开启)

  此外,5.3中还增加以下功能:

    jws status:检查Jexus的运行状态

    jws -V:查看Jexus的版本                

操作方法跟运行普通脚本一样./XXX,没有多少技术含量。这里值得注意的是,这些脚步文件的拥有者应该保证是root用户,并且有运行的权限。

4、Jexus的配置

Jexus的配置分为两个方面,一个是Jexus整体的配置(jws.conf),另外则是网站独立的配置(默认所有的网站配置文件都在siteconf文件夹中)。网站的独立配置可以调用很多Jexus的高级功能,我们把它当到下一回合再进行学习讨论,本章中我们主要进行Jexus的整站配置。我们用vi打开jws.conf看看里面有些什么设置项:

在这里,我解析一下每个选项的作用和注意事项:

(1)、SiteLogDir:这个设置项必须得存在并且开启,该设置项设置Jexus的运行日志记录、各网站运行的日志记录都会存放到该文件夹中。此外,当记录的日志文件大小达到一定程度的时候,Jexus会自动的把日志写到一个新的日志文件中,不会一直通过追加写的方式把所有的日志记录都写到同一文件中。

(2)、SiteConfigDir:这也是一个必须存在并且开启的设置项,这个设置项设置Jexus中各网站配置的存放地点,Jexus中默认的网站配置之所以存放在siteconf就是因为这里默认的值就为siteconf。此外值得注意的是,存放在该配置文件夹中的文件只能是网站的配置文件,其他任何的文件都不能存到到该目录(包括网站配置文件本身的备份文件),因为Linux系统所有的事物都是以文件的方式作为存储,因此无论你采用什么样的后缀,在Linux系统中都只当作普通文件来对待。

(3)、Runtime:该设置项用于配置Runtime的版本,除非有特殊需求需要改动Runtime的版本,一般情况下无需修改。

再来看一下一些高级点的设置项,这些设置项都是默认关闭的,

(4)、LLVM:是否开启LLVM编译器功能。开启LLVM可以把中间语言的编译交给LLVM编译器,这可以加快编译的速度,编译出来的代码性能或许会更优秀一些。不过值得注意的地方:并不是所有的Linux都带有LLVM编译器,并且mono自带的编译器编译效率和编译生成的代码性能上也不差什么,因此如果没有特殊的需要,这一项可以让他保持默认关闭。

(5)、httpd.processes:Jexus中默认的工作进程为1个,单个进程最大的并发数固定为1万个,通过开启多个工作进程可以提高Jexus处理并发的能力,开启多个进程的方式非常简单,只要修改httpd.processes的值并重启Jexus即可。不过这里有几点需要注意的地方:[1]Jexus最大支持的工作进程为4个,因此这里最大只能填写4;[2]如果开启了多个Jexus的工作进程,请注意网站的Session的保存方式,请通过修改网站config文件来修改Session的保存方式,避免采用进程的方式保存Session,否则将会造成Session的不同步,给网站的运作造成不必要的麻烦,Session的保存可以借助第三方的方式来保存(比如数据库,或者Jexus提供的强大的ASP.NET服务状态保存);[3]Jexus工作进程的设置跟服务器的CPU内核数和内存数有关,如果你的Cpu只有一个核,而你配置开启了两个进程,也只能达到一个容错的效果,能够承载的并发数是不会上去的。详细可以参考文章《让Jexus支持高并发请求的优化技巧》

(6)、httpd.user:不知道各位读者用过Apache没有,在Apache中的httpd.conf有这么一项设置user=XXX:可以把Apache以某个用户的方式启动,相应的该用户的所拥有的操作权限都会赋给Apache进程。同样,httpd.user的作用也是跟Apache中的user是一样的,只要把一个已有的用户的用户名填写到httpd.user中,Jexus就会拥有该用户的操作权限。有什么用?嗯,举个例子吧,如果网站的运行会产生一些新文件的(比如做页面静态化),各位读者会采用什么办法解决呢?chmod 777?这可以解决,但是把目录的权限设置为777会存在安全性的问题,如果可以有一种解决方案:进程和某些用户可以对该目录进行读写操作,而其他用户不能,那就可以解决安全性问题了。嗯,对的,这个时候httpd.user就派上了用场,我们只要创建一个仅能供某个用户读写的目录,并把此用户的用户名填写到httpd.user中,就可以实现我们想要的功能了。

(7)、php-fcgi.set:此功能是用于让Jexus支持PHP,由于这里与.NET关系不大,这里就不做过多的介绍了,需要了解的读者可以参照这篇文章:《让Jexus V5.1支持PHP的操作步骤》

(8)、CertificateFile 与 CertificateKeyFile:这个是让Jexus支持SSL的配置项,是用方法可以参照文章:《Linux+Apache安装生成配置SSL证书》《如何让jexus 支持ssl》

在这八大Jexus的网站配置中,有一个终极的注意事项:每次配置后记得重启Jexus,否则刚才的配置是不会生效的!!!

[转]Jexus的常用操作和基本配置的更多相关文章

  1. vim常用操作技巧与配置

    vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技巧 说明: 以下的例子中  ...

  2. 关于vim的常用操作

    vim常用操作和使用技巧 vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技 ...

  3. vim常用操作和使用技巧

    vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技巧 说明: 以下的例子中  ...

  4. legend3---lamp.sh常用操作

    legend3---lamp.sh常用操作 一.总结 一句话总结: 1.github上下载代码 2.修改项目数据库配置,修改文件权限等操作:chown -R apache:apache /data/w ...

  5. nodejs配置及cmd常用操作

    一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...

  6. centos LAMP第四部分mysql操作 忘记root密码 skip-innodb 配置慢查询日志 mysql常用操作 mysql常用操作 mysql备份与恢复 第二十二节课

    centos  LAMP第四部分mysql操作  忘记root密码  skip-innodb 配置慢查询日志 mysql常用操作  mysql常用操作 mysql备份与恢复   第二十二节课 mysq ...

  7. git常用操作 配置用户信息、拉取项目、提交代码、分支操作、版本回退...

    git常用操作 配置用户信息.拉取项目.提交代码.分支操作.版本回退... /********git 配置用户信息************/ git config --global user.name ...

  8. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  9. DBA必备:MySQL数据库常用操作和技巧

    DBA必备:MySQL数据库常用操作和技巧 2011-02-25 15:31 kaduo it168 字号:T | T MySQL数据库可以说是DBA们最常见和常用的数据库之一,为了方便大家使用,老M ...

随机推荐

  1. How to disable certain HTTP methods (PUT, DELETE, TRACE and OPTIONS) in JBOSS7 .

    Resolution Option 1 -Using RewriteValve (can apply globally) You can use RewriteValve to disable the ...

  2. 第二篇 SQL Server安全验证

    本篇文章是SQL Server安全系列的第二篇,详细内容请参考原文. 验证是检验主体的过程.主体需要唯一标识,那样SQL Server可以确定主体有哪些权限.正确的验证是提供安全访问数据库对象的必要的 ...

  3. C#和VC++字符集和编码

    C# char 关键字用于声明 .NET framework 使用 Unicode 字符表示 System.Char 结构的实例. Char 对象的值是 16 位数字 (序号值.)将字符表示为 UTF ...

  4. 用仿ActionScript的语法来编写html5——第八篇,图片处理+粒子效果

    用仿ActionScript的语法来编写html5系列开发到现在,应该可以做出一些东西了,下面先来研究下图片的各种效果预览各种效果看下图效果和代码看这里,看不到效果的请下载支持html5的浏览器 ht ...

  5. 轻量级的jquery

    话不多说,直接上源代码 一.tool.js 封装一些共用方法,以及相关的浏览器兼容细节,供Base.js调用 //浏览器检测,一旦加载即执行 (function() { window.sys = {} ...

  6. Java堆内存

    Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象. 在 Java 中,堆被划分成两个不同的区域:新生代 ( Young ).老年代 ( Old ).新生代 ( Yo ...

  7. iOS 判断字符串中含有某个字符串 rangeOfString

    //判断roadTitleLab.text 是否含有qingjoin if([roadTitleLab.text rangeOfString:@"qingjoin"].locati ...

  8. Effective C++ 1.让自己习惯C++

    //条款01:视C++为一个语言联邦 // 1:C++主要包含的语言为: // A:C.说到底C++仍然以C为基础.区块(blocks).语句.预处理器.内置数据类型.数组.指针等均来自于C.许多时候 ...

  9. PostgreSQL应用相关问题解决

    PostgreSQL中是否区分聚簇索引与非聚簇索引的问题? 答:PostgreSQL中区分聚簇索引与非聚簇索引. 示例如下: 创建聚族索引: CREATE INDEX test_ind ON yy ( ...

  10. 最大权闭合图hdu3996

    定义:最大权闭合图:是有向图的一个点集,且该点集的所有出边都指向该集合.即闭合图内任意点的集合也在改闭合图内,给每个点分配一个点权值Pu,最大权闭合图就是使闭合图的点权之和最大. 最小割建边方式:源点 ...