jdk 8 使用okhttp3 实现 http2

  • 使用okhttp3 发送HTTP请求就不赘述了,网上到处都是,参见https://blog.csdn.net/taiyangdao/article/details/80896330
  • 主要介绍下,如何发送HTTP2协议(后简称h2)请求,默认用上述方式发送的请求实际上还是HTTP1.1协议的。
  • 这是因为h2新加入了ALPN(Application Layer Protocol Negotiation),从字面意思理解就是应用层协议协商,即双方商量下用哪个协议。不幸的是jdk8是在2014年发布的,当时HTTP2协议还没出生,幸运的是通过第三方jar包就可以支持ALPN。
  • jdk7和jdk8通过添加jvm参数加入第三方alpn支持包,注意版本不能搞错,jdk7使用 alpn-boot-7..jar ,jdk8使用 alpn-boot-8..jar ,这里有版本对应关系 alpn-versions

jdk8
-Xbootclasspath/p:/home/payne/Downloads/alpn-boot-8.1.11.v20170118.jar
jdk7
-Xbootclasspath/p:/home/payne/Downloads/alpn-boot-7.1.3.v20150130.jar
jdk9
使用jdk9平台时,注意okhttp版本大于3.3.0
https://mvnrepository.com/artifact/org.mortbay.jetty.alpn/alpn-boo

使用方式
idea
jdk 8 使用okhttp3 实现 http2

jmeter

修改jmeter 文件,加入
JVM_ARGS=$JVM_ARGS" -Xbootclasspath/p:/home/alpn-boot-8.1.13.v20181017.jar"
如下图
jdk 8 使用okhttp3 实现 http2

上一篇:MYSQL,innodb_buffer_pool_size内存分配


下一篇:Flask框架第一篇.Flask框架基础