1.1 启动与配置 - BerryWang1996/netty-spring GitHub Wiki
1. 启动服务
由于Netty可以在任何时候通过代码启动,所以建议在系统初始化阶段就开启Netty,模块netty-spring-web主要用来启动Netty,使用启动类NettyServerBootstrap来启动Netty,启动需要Spring环境的支持。代码如下:
public static void main(String[] args) {
new NettyServerBootstrap().start(new NettyServerStartupProperties())
}
2. 配置
你会发现,在启动Netty的时候,创建了一个NettyServerStartupProperties对象,这个对象是用来配置Netty的,下面将一一介绍配置对象的各个属性。
2.1 基本配置
| 字段名 |
默认值 |
说明 |
| applicationName |
_netty_spring_application |
应用的名称 |
| loadSpringApplicationContext |
true |
是否在启动时加载Spring上下文,如果在启动的时候不加载,需要在创建NettyServerBootstrap时,在构造器传入Spring上下文 |
| configLocation |
classpath:applicationContext.xml |
如果需要在启动时加载Spring上下文需要xml配置文件 |
| handleFile |
false |
如果通过http请求请求服务器文件是否进行处理 |
| rootLocation |
null |
服务器文件目录所在文件夹,请求服务器文件时,会从这个文件夹中获取文件 |
| infoLocation |
null |
WEB-INF文件夹所在位置或者资源文件夹位置(目前没有使用到,为模板引擎做预留) |
2.2 SSL
| 字段名 |
默认值 |
说明 |
| enable |
false |
是否启动https |
| certificate |
null |
PEM格式的X.509证书 |
| certificateKey |
null |
PKCS#8格式的私钥文件 |
2.3 Gzip
| 字段名 |
默认值 |
说明 |
| enable |
false |
是否开启gzip |
| types |
text/html text/plain application/javascript application/x-javascript text/javascript text/css application/xml image/jpeg image/gif image/png |
对哪一些MIME类型进行压缩 |
| compressionLevel |
6 |
1产生最快的压缩,9产生最好的压缩。0表示没有压缩 |
| windowBits |
15 |
以两个对数为底的历史缓冲区的大小。这个值应该在范围9到15之间。较大的值会以牺牲内存使用为代价获得更好的压缩 |
| memLevel |
8 |
应该为内部压缩状态分配多少内存。1使用最小内存,9使用最大内存。更大的值以牺牲内存使用为代价,导致更好更快的压缩 |
| contentSizeThreshold |
0 |
当响应体的大小超过阈值时,响应体被压缩。这个值应该是非负数。0将为所有响应启用压缩 |