什么是标题缓存在Spray中有用?

Mar*_*mou 5 scala spray

我们一直试图在我们的一个系统中追踪一个非常难以捉摸的错误,我们400 Bad Request在向服务器发出一些请求后收到错误.我们最终跟踪它到Spray中的HTTP Header缓存,由于某种原因,nodeCount变量in HttpHeaderParser被设置为> 32k的值,因为它稍后被转换为a Short,导致溢出.

我们通过禁用HTTP标头缓存(spray.can.server.parsing.header-cache.default = 0)来解决问题.我们试图制作一个可重复的最小项目但却无法做到.

我的问题是,我们可以期望完全禁用标头缓存有什么影响?我真的不明白为什么它甚至是必要的,因为在每个请求中都必须解析头文件(因为值可能已经改变).这是通过重用HttpHeader对象来节省内存吗?