您好,欢迎光临搜索引擎优化网站!
作者:jcmp
浏览量: 0
2021-04-06在Restful接口日益成为主流的今天,
在Restful接口日益成为主流的今天,怎么提高接口的访问速度?
其实HTTP协议本身就提供了很多优化的方式,今天我们讲的就是通过ETag进行网络优化。
让我们试着了解ETag头文件的工作原理:
简而言之,如果相同的请求再次从同一个客户端发送到服务器,并且响应的数据相同,那么服务器将发送304 状态,以便客户端不会从服务器读取相同的数据,而是使用先前的缓存数据。如果响应的数据和之前的不同,那么服务器将返回状态码200,以便客户端缓存新的响应数据。
Etag不会提高服务器的性能,但它能减少网站的带宽和网络流量。
Spring boot实现起来也非常简单,只需要加入一个Filter。
一、现在我们来看看效果
二、第一次请求接口
我们可以看到,返回状态是200,传输的传输大小是5.45K,响应头里有一个ETag。
三、第二次请求接口
我们可以看到,返回状态是304,传输的传输大小写着是已缓存,请求头里我们发现多了一个If-None-Match,值就是我们第一次请求时的ETag。
这个ETag的威力大家也看到了,其实在我们的实际业务接口中,频繁变动数据的接口是在少数,使用ETag可以在节省网络流量的同时,又不失数据的及时性,何乐而不为?
前端攻城狮可以考虑将ETag进行磁盘缓存,也就是说应用重新打开ETag也还是有效。
参考文献:
https://javadeveloperzone.com/spring-boot/spring-boot-etag-header-example/