Java 9:HTTP / 2的改进

HTTP / 1.1的期待已久的更新是很快! 让我们看看有什么新的HTTP / 2,它的缺点,它将如何影响你的工作。
Java 9不仅仅关注模块化。 有大量的附加功能和增强功能,通过中被释放的过程。 本文描述了新的HTTP 2的支持。

HTTP / 2是HTTP协议的最新版本。 现有版本的1.1(HTTP)问题在新版本被淘汰。 HTTP / 2主要关注数据如何陷害和服务器和客户端之间传输。

HTTP / 2的优势
在HTTP / 1.1,我们不能超过6连接开放一次,所以每个请求必须等待其他人来完成。 为了避免这种情况,开发人员用来做解决方案作为一个最佳实践。 这些最佳实践包括缩减、压缩和压缩文件一起,雪碧图片等,这可以消除在HTTP多路复用/ 2。 这意味着HTTP / 2可以并行发送多个请求数据在一个TCP连接。

在HTTP / 1.1中,每个请求发送到服务器会有头的额外数据,从而增加带宽。 这可以消除在HTTP / 2.0通过头文件打包成一个压缩块,将作为一个单元,一旦传输完成后,头块解码。 它使用HPack报头压缩。

在一个HTTP / 1.1环境中,一个HTML页面发送到浏览器。 浏览器解析它并决定需要哪些资产,然后从服务器请求这些资产。 这可以消除服务器推送HTTP / 2。 它允许服务器响应积极推到客户端,而不是等待新请求的过程。

文本所取代二进制在HTTP / 2.0

域分片和资产不再需要连接与HTTP / 2。

HTTP / 2.0的缺点
我们中的许多人预期更多的功能在HTTP 2.0协议,但许多人并不包括在最终版本支持向后兼容。

它是不是非常快。

它是容易受到攻击。 (违反和犯罪)。

HTTP / 2.0决定离开加密的HTTP / 1.1。

HTTP / 2.0不是很小心饼干安全。

Java 9与HTTP / 2.0的变化
原HTTP-handling API在Java写的时候HTTP / 1.1是一个新的,闪亮的东西。 它写的是不可知论者,支持许多不同类型的连接使用相同的API。 随着时间的推移,HTTP已经进化,但Java API的使用并没有跟上步伐。 所以对于Java 9,引入了一个新的API,使用更清洁和更清晰,还增加了支持HTTP / 2。

新的API处理HTTP连接通过三个类。

HttpClient处理请求的创建和发送。

HttpRequest用于构造通过HttpClient发送一个请求。

HttpResponse持有的响应请求已发送。
java.net推出了HttpRequest和HttpResponse HttpClient类

新的API帮助HTTP连接更容易维护。 这是更快,允许更具响应性的应用程序,而不需要第三方库。

import jdk.incubator.http.*;
import java.net.URI;
import java.io.IOException;
import java.util.Map;
public class HTTP2Demo {
    public static void main(String[] args) throws IOException {
        try {
            HttpClient httpClient = HttpClient.newHttpClient(); //Create a HttpClient
            System.out.println(httpClient.version());
            HttpRequest httpRequest = HttpRequest.newBuilder().uri(new URI("https://www.google.com/")).GET().build(); //Create a GET request for the given URI
            Map < String, List < String >> headers = httpRequest.headers().map();
            headers.forEach((k, v) - > System.out.println(k + "-" + v));
            HttpResponse < String > httpResponse = httpClient.send(httpRequest, HttpResponse.BodyHandler.asString());
        } catch (Exception e) {
            System.out.println("message " + e);
        }
    }
}

在上面的示例中,我们使用同步功能(我。 e httpClient.send),这将阻塞,直到它完成。 这并不总是可取的。 所以,我们可以让它是异步的。

leFuture > httpResponse = httpClient.sendAsync(httpRequest, HttpResponse.BodyHandler.asString());

上面的代码片段将允许继续其他任务。 返回CompletableFuture对象可用于确定请求已经完成,提供了访问HttpResponse一旦完成。

if(httpResponse.isDone()) {
    System.out.println(httpResponse.get().statusCode());
    System.out.println(httpResponse.get().body());
} else {
    httpResponse.cancel(true);
}

上面的代码片段是用来检查是否完成的响应。 还有其他的实用方法,便于处理。
1、具有1-5工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的可以加。

2、在公司待久了,过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的可以加。

3、如果没有工作经验,但基础非常扎实,对java工作机制,常用设计思想,常用java开发框架掌握熟练的,可以加。

4、觉得自己很牛B,一般需求都能搞定。但是所学的知识点没有系统化,很难在技术领域继续突破的可以加。

群号:java高级进阶群654675708备注好信息!
6.阿里Java高级大牛直播讲解知识点,分享知识,多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 198,932评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,554评论 2 375
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 145,894评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,442评论 1 268
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,347评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,899评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,325评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,980评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,196评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,163评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,085评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,826评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,389评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,501评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,753评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,171评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,616评论 2 339

推荐阅读更多精彩内容