我希望将压缩添加到基于spring的web服务(同时为xml和json服务)中,我看到有许多不同的gzip压缩过滤器,但不确定是否被接受为最常见的,即有Jboss或Spring提供吗?
另外,我还阅读了1000-860 bytes is pointless as compression time is greater than time saved and if its below 150 bytes that object actually grows下面的压缩内容。
这些过滤器是否支持最小的对象大小?
发布于 2013-05-14 16:47:31
这是一个旧线程,但是在呈现JSP之前,过滤器中的压缩就会发生。您可以通过apache启用它,但是使用Servlets/过滤器或Spring作为过滤器使用它可能不会对您有所帮助:
http://forum.springsource.org/showthread.php?45604-Using-gzip-for-compression-how
我注意到,阅读您的问题时,您使用的是xml和json响应。在Spring /Controller级别上,您仍然可以从中获得一些好处,如果您只需要这样的话,但我可能仍然会在Apache中使用GZIP功能。
http://betterexplained.com/articles/how-to-optimize-your-site-with-gzip-compression/
发布于 2014-02-14 00:51:31
您还可以使用ehcache-web,因此http响应(带有头)被缓存(使用gzip压缩)并返回给客户端。因此,只有当内容由spring端点返回时,gzip进程(和序列化)才会发生。
但是ehcache-web是为缓存页面而设计的,因此您必须重写过滤器(SimplePageCachingFilter),以便在放置、发布或删除请求谓词时处理驱逐。
您还可以编写自己的筛选器,并使用ehcache作为缓存管理器来放置/排除值。这些值将是包含*端点调用结果的结构,在json或xml (作为字符串)中序列化,*是http头的映射。
不幸的是,Spring (@Cacheable)中的缓存支持缓存方法调用的结果,然后对每个http请求进行序列化。这是可以理解的,因为Spring缓存是不可知论的,并且不紧于http。
https://stackoverflow.com/questions/16548492
复制相似问题