本站首页    管理页面    写新日志    退出



公告


 求真务实打基础,
 宁缺毋滥读好书。

数据挖掘青年(DMman)


我的分类(专题)

日志更新
问君能有几多愁,恰似一群太监上青楼
我和僵尸有个约会:灵异世界或真实存在?
赤壁(下)观后小感:雷人
英科学家:酒精和烟草的危害大于大麻和摇头
只有社会主义才能拯救世界(由金融危机引发
求职心得(非名牌院校 硕士 计算机)
省外就业协议录入
数据挖掘方面的资源、期刊、会议的网址集合
面试心得(摘)
为学
EI收录中国期刊-核心(2008-5)
混沌理论:随机世界的建模
分子计算机已经问世,纳米计算机指日可待?
绝对好用免费的网络电话
NLP:基于机器学习的人类思想及行为建模
Weka中用于组合多个模型的的装袋、提升
数据挖掘在企业中应用的四种途径
(转)几点做人做事的建议
大学计算机软件专业生应该学什么(转)
一个程序员对学弟学妹建议(转)

最新评论

留言板

链接

Blog信息
blog名称:DMman(数据挖掘青年)
日志总数:102
评论数量:564
留言数量:57
访问次数:1661267
建立时间:2007年4月9日




[Java EE]转:Tomcat服务器配置参考(4)Engine容器
网上资源

数据挖掘青年 发表于 2007-4-19 21:39:28

概述 Engine元素代表与特定的Catalina Service相关的所有请求处理机制。它从一个或者多个Connector接受请求并处理,将完整的响应返回给Connector,由Connnector最终传回给客户端。 每个Service元素必须有且仅有一个Engine元素,Engine元素跟在对应的Connector元素的后面。   属性 公共属性 Engine的所有实现支持如下属性: 属性 描述 backgroundProcessorDelay 这个值代表在该engine及其子容器(包括所有的wrappers)上调用backgroundProcess方法的延时,以秒为单位。如果延时值非负,子容器不会被调用,这意味着子容器使用自己的处理线程。如果该值为正,会创建一个新的线程。在等待指定的时间以后,该线程在Engine及其 子容器上调用backgroundProcess方法。如果没有指定,缺省值为10,代表10秒的延时。   className 实现的Java类名。该类必须实现org.pache.catalina.Engine接口。如果没有指定,使用标准实现。 defaultHost 缺省主机名,缺省主机用来处理不能匹配任何Context路径的请求。所有嵌套在Engine中的Host元素中,必须有一个Host的name属性与这个名称匹配。 jvmRoute 在使用负载平衡的情况下,用来使能session affinity的标识符。这个标识符在所有参与集群的Tomcat 5 服务器中必须是唯一的。标识符附加在session标识符后面,因此前端代理总是可以把特定的session转发到同一个Tomcat 5 实例。 name Engine的逻辑名,用在日志和错误消息中。 标准实现 Engine的标准实现是org.apache.catalina.core.StandardEngine。它支持如下的附加属性: 属性 描述 debug 与这个Engine相关联的Logger记录的详细程度。数字越大,输出越详细。如果没有指定,缺省值为0。 嵌套元素 可以在Engine元素中嵌入一个或者多个Host元素,每个Host元素代表一个不同的虚拟主机。至少需要定义一个Host,并且嵌套的Host元素中,必须有一个名称与上面指定的defaultHost属性匹配。 也可以在Engine元素嵌入一个DefaultContext元素(可选),用来定义自动发布的web应用的缺省属性。 下列元素可以嵌套在Engine元素中,但每种元素至多只能嵌套一次: Logger - 配置一个logger,用来接收和处理Engine的所有日志消息,还包括与这个Engine相关的所有Connector的消息。另外,Engine还负责记录嵌套的所有Host和Context的消息,除非被低层的Logger配置覆盖; Realm - 配置一个Realm,允许用户数据库以及用户的相关角色在所有的Host和Context之间共享,除非被低层的Realm配置覆盖; 专有特征 访问日志 正常情况下,运行web服务器会生成访问日志。访问日志以标准格式为每个请求输出一行信息。Catalina包含一个可选的Valve实现,可以用标准格式生成日志,还可以使用任意定制的格式。 通过在Engine,Host或者Context中嵌套一个Valve元素,Catalina会为该容器处理的所有请求创建访问日志,如下所示: 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> <Engine name="Standalone" ...> ... <Valve className="org.apache.catalina.valves.AccessLogValve" prefix="catalina_access_log." suffix=".txt" pattern="common"/> ... </Engine> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> 参考Access Log Valve,以获得更多配置属性的信息; 生命期Listeners(Lifecycle Listeners) 如果一个Java对象需要知道Context什么时候启动,什么时候停止,可以在这个对象中嵌套一个Listener元素。该Listener元素必须实现了org.apache.catalina.LifecycleListener接口,在发生对应的生命期事件的时候,通知该Listener。可以按照如下的格式配置这样的Listener: 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> <Engine name="Standalone" ...> ... <Listener className="com.mycompany.mypackage.MyListener" ... > ... </Engine> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'>注意,一个listener可以具有任意多的附加属性。属性名与JavaBean的属性名相对应,使用标准的属性命名方法。 请求过滤器(Request Filters) 对每个发送到Engine,Host或者Context的请求,可以要求Catalina检查IP地址或主机名称。Catalina使用一系列配置好的“接受”或者“拒绝”过滤器对客户端的地址或者主机名进行检查,过滤器是按照正则表达式语法定义的,由Jakarta Regexp正则表达式库支持。不被接受的请求会返回一个HTTP“Forbidden”错误。下面是过滤器的定义。 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> <Engine name="Standalone" ...> ... <Valve className="org.apache.catalina.valves.RemoteHostValve" allow="*.mycompany.com,www.yourcompany.com"/> <Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="192.168.1.*"/> ... </Engine> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'> 500)this.width=500'>如果想知道过滤器支持的更多选项的信息,参考Remote Address Filter和Remote Host Filter


阅读全文(1970) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.047 second(s), page refreshed 144421968 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号