HTTP/2是HTTP协议自1999年HTTP 1.1发布后的首个更新,主要基于SPDY协议。由互联网
工程任务组(IETF) 的Hypertext Transfer Protocol Bis (httpbis) 工作小组进行开发。该组织于2014年12月将HTTP/2标准提议递交至IESG进行讨论,于2015年2月17日被批准。HTTP/2标准于2015年5月以RFC 7540正式发表。
HTTPS(SSL/TLS)的加密机制虽然是大家都应了解的基本知识,但网上很多相关文章总会忽略一些内容,没有阐明完整的逻辑脉络,我当年学习它的时候也废了挺大功夫。
对称与非对称加密、数字签名、数字证书等,在学习过程中,除了了解“它是什么”,你是否有想过“为什么是它”?我认为理解了后者才真正理解了HTTPS的加密机制。
本文以问题的形式逐步展开,一步步解开HTTPS的面纱,希望能帮助你彻底搞懂HTTPS。
我们知道为了提高并行度,优化程序性能,编译器和处理器会对代码进行指令重排序。但为了不改变程序的执行结果,尽可能地提高程序执行的并行度,我们需要了解as-if-serial规则和happens-before规则。
Java 里面,最基本的互斥同步手段就是 synchronized 关键字,这是一种块结构( Block Structured )的同步语法。还有就是 Java 类库中新提供了 java. util.concurrent 包,其中的 java.util.concurrent.locks.Lock 接口便成了 Java 另一 全新的互斥 同步手段。
LockSupport
的 park()
和 unpark()
方法wait()
和notify()
方法