Jetty和Tomcat 配置上的一些异同

26 篇文章 0 订阅
11 篇文章 0 订阅

Jetty和Tomcat在有些关键地方的配置有一些异同,这里简单列举下:

  • 字符编码

      Jetty 7 get URI queryString 编码默认使用 UTF-8 编码,可以通过 request.setAttribute(“org.eclipse.jetty.server.Request.queryEncoding”,”GBK”) 设定查询参数的编码,如果不设定则默认读取系统属性 -Dorg.eclipse.jetty.util.URI.charset=GBK 的编码,如果系统属性也没有设定,则默认为 UTF-8

       POST 参数默认使用 Content-type 中的 Charset 编码,如果 Charset 没有,则默认使用 UTF-8 编码,当然可以在使用之前使用 request.set CharacterEncoding 设定编码。


Tomcat  get 编码默认是 ISO-8859-1 ,可以通过 Connector URIEncoding =GBK 设定编码,也可以强制 useBodyEncodingForURI =true URI body 编码一致。

 

  • Connector配置

       Tomcat Connector 配置参数和 jetty 的参数对应关系

Tomcat

Jetty

原生socket

备注

acceptCount

AcceptQueueSize

Backlog ,默认 50

连接被 accept 前允许等待的连接数

connectionLinger

SoLingerTime

soLinger

 

connectionTimeout

MaxIdleTime

SoTimeout

ServerSocket 来说是 accept 最大阻塞时间,对 Socket 来说是 read 调用阻塞时间

enableLookups

ResolveNames

是否反查 getRemoteHost()

是否反查客户机主机名

 

 

 

 

 

 

 

 

  • Tomcat 特有增强性能的APR

         Tomcat connector 配置 AJP/1.3 HTTP/1.1 可能会使用 APR ,如果类路径中 org.apache.tomcat.jni.Library 可以用,那么则会使用 APR. 其实 Library 是在默认 加载   tcnative-1.so  和libtcnative-1.so动态本地连接库来增强其性能,经过测试,APR大概给Tomcat带来约15%的性能提升,的确很给力。

       假想: Jetty如果用上这个本地库性能会有多大提升呢?最近我在进行Jetty支持APR的Connector迁移测试,我们拭目以待!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值