首页 > 其他分享 >Jetty的http3模块

Jetty的http3模块

时间:2024-03-10 13:23:09浏览次数:29  
标签:INFO http3 模块 enabled Jetty jetty quic QUIC

启用http3模块,执行如下命令:

java -jar $JETTY_HOME/start.jar --add-modules=http3

命令的输出,如下:

ALERT: There are enabled module(s) with licenses.
The following 2 module(s):
 + contains software not provided by the Eclipse Foundation!
 + contains software not covered by the Eclipse Public License!
 + has not been audited for compliance with its license

 Module: jna
  + Java Native Access (JNA) is licensed under the LGPL, version 2.1
  + or later, or (from version 4.0 onward) the Apache License,
  + version 2.0.
  + You can freely decide which license you want to apply to the project.
  + You may obtain a copy of the LGPL License at:
  + http://www.gnu.org/licenses/licenses.html
  + A copy is also included in the downloadable source code package
  + containing JNA, in file "LGPL2.1", under the same directory
  + as this file.
  + You may obtain a copy of the Apache License at:
  + http://www.apache.org/licenses/
  + A copy is also included in the downloadable source code package
  + containing JNA, in file "AL2.0", under the same directory
  + as this file.

 Module: quiche
  + Redistribution and use in source and binary forms, with or without
  + modification, are permitted provided that the following conditions are met:
  + * Redistributions of source code must retain the above copyright
  + notice, this list of conditions and the following disclaimer.
  + * Redistributions in binary form must reproduce the above copyright
  + notice, this list of conditions and the following disclaimer in the
  + documentation and/or other materials provided with the distribution.
  + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
  + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
  + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Proceed (y/N)? y
INFO  : alpn-java       transitively enabled
INFO  : alpn            transitively enabled, ini template available with --add-modules=alpn
INFO  : work            transitively enabled
INFO  : http2           transitively enabled, ini template available with --add-modules=http2
INFO  : http3           initialized in ${jetty.base}/start.d/http3.ini
INFO  : jna             transitively enabled
INFO  : ssl             transitively enabled, ini template available with --add-modules=ssl
INFO  : quiche          transitively enabled
INFO  : mkdir ${jetty.base}/work
INFO  : mkdir ${jetty.base}/lib/http3
INFO  : download https://repo1.maven.org/maven2/net/java/dev/jna/jna-jpms/5.14.0/jna-jpms-5.14.0.jar to ${jetty.base}/lib/http3/jna-jpms-5.14.0.jar
INFO  : download https://repo1.maven.org/maven2/org/mortbay/jetty/quiche/jetty-quiche-native/0.20.0/jetty-quiche-native-0.20.0.jar to ${jetty.base}/lib/http3/jetty-quiche-native-0.20.0.jar
INFO  : Base directory was modified

http3模块的配置文件$JETTY_BASE/start.d/http3.ini,内容如下:

# ---------------------------------------
# Module: http3
# Enables experimental support for the HTTP/3 protocol.
# ---------------------------------------
--modules=http3

## The host/address to bind the connector to.
# jetty.quic.host=0.0.0.0

## The port the connector listens on.
# jetty.quic.port=8444

## The connector idle timeout, in milliseconds.
# jetty.quic.idleTimeout=30000

## Specifies the maximum number of concurrent requests per session.
# jetty.quic.maxBidirectionalRemoteStreams=128

## Specifies the session receive window (client to server) in bytes.
# jetty.quic.sessionRecvWindow=4194304

## Specifies the stream receive window (client to server) in bytes.
# jetty.quic.bidirectionalStreamRecvWindow=2097152

## Specifies the stream idle timeout, in milliseconds.
# jetty.http3.streamIdleTimeout=30000

  • jetty.quic.host
    监听服务的主机地址,默认值为0.0.0.0,即在本机所有的IP地址上监听链接的请求。
  • jetty.quic.idleTimeout
    链接的空闲时长,单位:毫秒,默认值为30000,即30秒。
  • jetty.quic.maxBidirectionalRemoteStreams
    单个会话中允许并行发起的请求的数量。默认值为128
  • jetty.quic.sessionRecvWindow
    会话的接收数据的窗口,单位:字节。默认值为4194304
  • jetty.quic.bidirectionalStreamRecvWindow
    双向传输时接收数据的窗口,缓冲区的大小,单位:字节。默认值为2097152
  • jetty.http3.streamIdleTimeout
    单位:毫秒,默认值为30000,即30秒。

参考资料

标签:INFO,http3,模块,enabled,Jetty,jetty,quic,QUIC
From: https://www.cnblogs.com/jackieathome/p/18064032

相关文章

  • Jetty的server模块
    启用server模块,执行如下命令:java-jar$JETTY_HOME/start.jar--add-modules=server命令的输出,如下:INFO:serverinitializedin${jetty.base}/start.d/server.iniINFO:Basedirectorywasmodified查看server模块的配置文件,执行如下命令:cat$JETTY_BASE/s......
  • Java登陆第三十三天——ES6(二)模块、模块化
    模块化是管理JS代码的一种手段,把代码拆分成小模块,提高代码维护性,复用性,拓展性。模块类似与Java的包,可以从外部导入。模块有三种导出方式分别导出统一导出默认导出三种导出方式可以混用。模块化的关键字有export、import、as和default。ES6的模块会自动开启严格......
  • Jetty的ssl模块
    启用ssl模块,执行如下命令:java-jar$JETTY_HOME/start.jar--add-modules=ssl命令的输出,如下:INFO:sslinitializedin${jetty.base}/start.d/ssl.iniINFO:Basedirectorywasmodified查看ssl模块的配置文件,执行如下命令:cat$JETTY_BASE/start.d/ssl.i......
  • Jetty的bytebufferpool模块
    bytebufferpool模块用于配置Jetty的ByteBuffer对象的对象池。通过对象池的方式来管理ByteBuffer对象的使用和生命周期,期望降低Jetty进程内存的使用,同时降低JVM运行期垃圾回收操作的压力。启用bytebufferpool模块,执行如下命令:java-jar$JETTY_HOME/start.jar--add-modules=byt......
  • Jetty的console-capture模块
    console-capture模块用于记录Jetty运行时向标准输出和标准错误写出的信息。Java的标准输出流,即System.out。Java的标准错误流,即System.err。console-capture模块支持在每天晚上切换输出文件,自动清理超出保留期的日志文件。启用console-capture模块,执行如下命令:java-jar$JET......
  • Ansible——模块
    Ansible介绍Ansible是一个同时管理多个远程主机的软件(任何可以通过SSH协议登录的机器),因此Ansible可以管理远程虚拟机、物理机,也可以是本地主机(linux、windows)。Ansible通过SSH协议实现管理节点、远程节点的通信。只要是能够SSH登录的主机完成的操作,都可以通Ansible自动化操作,比......
  • FMS设备监察系统无线传输模块及网关快速应用教程
    设备监察系统又叫做FMS(Facilities  Monitoring  System),该FMS系统由 GUI(配置上位机)、FMS网关和lora无线模块节点三部分组成。亿佰特上市的E53-470FMS22S、E53-DTU(470FMS22)产品是基于LoRa扩频技术开发的设备监察系统无线传输模块及网关,其强大的抗干扰能力,让无线通信在工业现......
  • Linux架构24 ansible之get_url模块, 服务管理模块, 用户管理模块, 定时任务模块, 挂载
    3.get_url模块-name:Downloadfoo.confget_url:url:http://example.com/path/file.confdest:/etc/foo.confmode:'0440'checksum:md5:b5bb9...#公司内部库,验证文件是否为要求的文件checksum:sha256:b5bb9...#另一种验证方式......
  • MATLAB----遗传算法及Simulink延时模块实例
    clctic%%参数初始化maxgen=100;%进化代数,即迭代次数,初始预定值选为100sizepop=200;%种群规模,初始预定值选为100pcross=0.9;%交叉概率选择,0和1之间,一般取0.9pmutation=0.01;%变异概率选择,0和1之间,一般取0.01individuals=struct('fitness',zeros(1,sizepop),'chrom',[]);%种群......
  • vue3 报错解决:找不到模块或其相应的类型声明。(Vue 3 can not find module)
    当我们在引入应该组件的时候提示找不到这个组件但是项目明明就有这个物理文件报错原因:typescript只能理解.ts文件,无法理解.vue文件 这个时候我们应该这样首先原因:1、volar插件没开takeover模式去看volar插件介绍,开takeover模式2、volar未选择tyscript最新版本解决:1、......