一、缩写含义

Http:HyperText Transfer Protocol,超文本传输协议
Http2:HyperText Transfer Protocol 2.0,超文本传输协议2.0
Https:Hyper Text Transfer Protocol over Secure Socket Layer,基于SSL的超文本传输协议
SPDY:“speedy”的缩写(未考证),读作“SPeeDY”

二、起源及作用

Http是用于从WWW服务器传输超文本到本地浏览器的传输协议,是客户端浏览器或其他程序与Web服务器之间的应用层通信协议。其中RFC 2616定义了HTTP 1.1,即现在通常所说的http协议。

Https,安全套接字层超文本传输协议,在http协议基础上加入了SSL协议,在结构上底层是tcp协议,之上是SSL协议,再之上是http,由于http是明文传输,容易被劫持和篡改,比如正常打开某些网站时出现不应有的广告,https由于加密则可以做到传输信息保密性,完整性和真实性。

Http2是对http协议的升级,支持单一连接多路复用,头部压缩,服务端推送等。在建立一个连接的基础上可以处理多个请求,对请求头部进行压缩。


SPDY是谷歌研究的基于TCP的应用层协议,是对HTTP的增强,IETF推出了类似于SPDY协议的HTTP2.0后,谷歌就放弃了对SPDY协议的支持。

三、spring中应用

在spring-boot中使用https,可以先用Java自带的keytool生成一个证书,之后在application.properties中配置端口和密码就行,也可以在配置类中配置。
https://docs.spring.io/spring...
使用https后,即可使用http2协议,因为:Spring Boot does not support h2c, the cleartext version of the HTTP/2 protocol.
只要在配置文件中配置属性server.http2.enabled即可

后记:实践不够,只能先理清概念,后续有更深体会再续补充。

补充知识

互联网协议分层:

HTTP、HTTP2、HTTPS、SPDY等的理解及在spring-boot中的使用相关推荐

  1. Spring Boot中DAO层和Service层等理解

    Spring Boot中DAO等层的理解 1 DAO层 2 Service层 3 Controller层 4 Entity层 5 View层 6 Utils层 总结 目前在公司实习python算法研究 ...

  2. SpringBoot精通系列-Spring Boot中如何配置Https

    导语    Https作为一个比较安全的协议,现在已经越来越普及了,特别是在完成小程序或者是公众号开发的时候,https基本上都是刚需了.但是一个HTTPS的证书是比较费钱的事情,个人开发者可以通过云 ...

  3. springboot转发http请求_Spring Boot2 系列教程(八)Spring Boot 中配置 Https

    https 现在已经越来越普及了,特别是做一些小程序或者公众号开发的时候,https 基本上都是刚需了. 不过一个 https 证书还是挺费钱的,个人开发者可以在各个云服务提供商那里申请一个免费的证书 ...

  4. 如何理解 Spring Boot 中的 Starters?

    如何理解 Spring Boot 中的 Starters? Starters是什么: Starters命名: Starters分类: Starters是什么: Starters可以理解为启动器,它包含 ...

  5. 在Spring Boot中启用Http2.0

    HTTP2.0特性 通俗易懂篇:https://www.cnblogs.com/yingsmirk/p/5248506.html 深入了解篇:https://www.jianshu.com/p/67c ...

  6. spring boot 中启用 https

    为什么80%的码农都做不了架构师?>>> 获取证书 https 是加密链接. 是需要证书的. 那么证书从哪里取得呢? 在本地测试的时候, 可以自己生成一个 tomcat 的证书, 可 ...

  7. 如何理解 Spring Boot 中的 Starters

    Starters是什么 Starters可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,你可以一站式集成Spring 及其他技术,而不需要到处找示例代码和依赖包.如你想使用Spring J ...

  8. Spring Boot中声明式数据库事务使用与理解

    JDBC的数据库事务 传统JDBC的数据库事务的一个示例如下代码所示,该示例仅为一个insertUser方法的数据库事务过程.可以看到,如果还存在很多其他的数据库事务需要,则需要编写很多类似于如下的代 ...

  9. 对于spring boot的理解

    转载自:https://blog.csdn.net/ricohzhanglong/article/details/80240715 Spring Boot在众多从事Java微服务开发的程序员群体中是一 ...

  10. Spring Boot工程支持HTTP和HTTPS,HTTP重定向HTTPS

    本文试图以通俗易通的方式介绍Https的工作原理,不纠结具体的术语,不考证严格的流程.我相信弄懂了原理之后,到了具体操作和实现的时候,方向就不会错,然后条条大路通罗马.阅读文本需要提前大致了解对称加密 ...

最新文章

  1. 奶牛排序 cow sort 置换群
  2. Nature官方劝退读博:全球七成博士对前途迷茫,36%自认有过心理疾病
  3. Advanced Linq - Dynamic Linq query library: Add support for 'Contains' extension
  4. ES6中箭头函数解释
  5. python常用代码总结-python字典的常用方法总结
  6. mongo14-----group,aggregate,mapReduce
  7. vs2015 动态链接库问题
  8. Redis源码分析系列十一:createClient后面内容
  9. SPI TFT液晶屏与Arduino Uno 连接
  10. 在线客服功能介绍-了解常见在线客服系统的功能点
  11. JQuery-Snowfall降雪插件使用
  12. 《关于TCP SYN包的超时与重传》——那些你应该知道的知识(四)
  13. wqewqewqewq
  14. 青藏高原对印度意味着什么呢?
  15. Linux apr-util安装
  16. Glide加载部分图片不显示问题
  17. 魔塔小游戏Java版项目
  18. 大学四年到现在的阿里技术专家,我做了啥?
  19. c++中不区分大小写比较字符串大小
  20. 2022年全球市场ERP系统服务研究报告

热门文章

  1. 设计大师Donald Norman和Bill Buxton签书会在南京举行
  2. 网上购物与开店赢家随身查
  3. 《我也能做CTO之程序员职业规划》之四:直线定律
  4. 元编程的思想是一种新的编程细想吗
  5. 3.7 Spark RDD编程
  6. python json转换与处理
  7. ffmpeg drawtext居中放置
  8. 计算机 大文件查找,win7笔记本电脑如何快速查找大文件
  9. php缩略图 实例,php生成缩略图后填充白边的代码示例
  10. Ros学习笔记(三)创建节点及节点之间通信