
HTTP2
文章平均质量分 78
易生一世
spring-petclinic-graphql开源项目的贡献者
展开
-
HTTP及其2.0版本综述
1.HTTP的历史HTTP出现已有近30年的历史了。最早的版本HTTP 0.9发布于1991。随后的HTTP 1.0发布于1996.5,提供了缓存相关的Head,如If-Modified-Since,Expires等。1999年发布的HTTP 1.1是使用最广泛的版本,其改进的特征如下:增强了缓存相关的Head: Entity tag,If-Unmodified-Since, If-Match, ...原创 2018-07-01 12:47:02 · 860 阅读 · 1 评论 -
Java应用与HTTP服务之间的粘合剂OpenFeign详解
OpenFeign曾用名Netflix Feign,最新版本是2018.5发布的9.7.0。OpenFeign是Java应用中编写Web服务的客户端的利器,基于第三方HTTP客户端类库,声明式地构建Web服务的客户端应用,以调用Web服务。OpenFeign在Java应用中,负责处理与远程Web服务的请求响应,最大限度降低编码复杂性。1. HTTP客户端类库OpenFeign默认使用J...原创 2018-08-01 12:28:38 · 2570 阅读 · 0 评论 -
Spring框架spring-web模块中的RestTemplate类详解
RestTemplate类是spring-web模块中进行HTTP访问的REST客户端核心类。RestTemplate请求使用阻塞式IO,适合低并发的应用场景。1. RestTemplate类提供了3个构造函数RestTemplate() RestTemplate(ClientHttpRequestFactory requestFactory)org.springframework.h...原创 2018-07-27 23:51:03 · 9052 阅读 · 1 评论 -
Spring框架5的spring-web模块中的Java对象与HTTP消息之间的数据转换器一览
Spring Framework 5.0.7.RELEASE版本中的spring-web模块,提供org.springframework.http.converter包,提供了一系列的Java对象与HTTP消息之间的数据转换器。其中,最基本的是org.springframework.http.converter.HttpMessageConverter接口,是所有具体数据转换器实现的基本接口。通...原创 2018-07-29 18:01:08 · 604 阅读 · 0 评论 -
Spring Framework 5中的对HTTP/2客户端和服务器的集成
Spring框架最早出现于2003年,以轻量级为Java企业应用开发提供了JavaEE之外的另一个选择。Spring框架就是一个辅助开发Java企业应用的框架。Spring框架的最新版本是5.0,主要新特性如下:最低要求Java 8,兼容Java 9最低要求JavaEE 7,兼容JavaEE 8(Servlet 4.0)支持WebFlux应用,无需Servlet容器即可运行(在Netty服务器中)...原创 2018-07-03 16:25:31 · 1920 阅读 · 0 评论 -
Java8中基于OkHttp3编写HTTP2客户端详解
显然,我们必须在Java还没有准备好支持HTTP2客户端编程的情况下(即使用Java 8及以下版本),提供HTTP2客户端应用的解决方案。目前流行的类库如下: OkHttp Eclipse Jetty Netty Apache HttpComponents (Apache HC)其中,Eclipse Jetty和Netty都同时提供客户端和服务端。而曾经广泛使用的Apache HC...原创 2018-07-03 12:09:19 · 15172 阅读 · 5 评论 -
Spring Boot 2.0中嵌入式Web容器(如Tomcat)对HTTP2的支持详解
Spring Boot应用往往作为服务发布,这里对HTTP2的支持,主要是对通过嵌入式Web容器支持HTTP2。1. 在最新的Spring Boot 2.0.3.RELEASE中,集成的三种嵌入式Web容器及其版本如下:Tomcat 8.5.31 (Servlet 3.1) Undertow 1.4.25.Final(Servlet 3.1) Jetty 9.4.11.v201806...原创 2018-07-09 22:46:03 · 9646 阅读 · 1 评论 -
Java10基于Java API编写HTTP2客户端详解
首先,基于Java API的HTTP2客户端,至少要使用Java 9,主要是基于其中的jdk.incubator.httpclient模块。Java 10中的相关部分没有变化。Java 11中已经正式发布到java.net.http模块。jdk.incubator.httpclient模块主要提供了如下API:HttpClient类 HttpRequest类 HttpResponse类...原创 2018-07-03 10:29:55 · 3721 阅读 · 2 评论 -
Java对HTTP2的支持
说到Java对HTTP2的支持情况,实质上包含两个部分。一个就是Java对TLS 1.2及其ALPN扩展的支持情况,另一个就是Java对HTTP2客户端、服务器的编程支持情况。1. Java对TLS 1.2及其ALPN扩展的支持1.1 Java 6初始时不支持TLS 1.2,但在最新的更新包(6u191)支持,并且客户端默认即使用TLS 1.2。但是为了支持HTTP2,还要借助于Je...原创 2018-07-02 14:15:28 · 15302 阅读 · 3 评论 -
Spring Cloud OpenFeign详解
作为Spring Cloud的子项目之一,Spring Cloud OpenFeign以将OpenFeign集成到Spring Boot应用中的方式,为微服务架构下服务之间的调用提供了解决方案。首先,利用了OpenFeign的声明式方式定义Web服务客户端;其次还更进一步,通过集成Ribbon或Eureka实现负载均衡的HTTP客户端。Spring Cloud OpenFeign的最新版本是2...原创 2018-08-02 21:31:34 · 114994 阅读 · 5 评论