2016-09-29 48 views
0

我们有一个Akka HTTP服务器为AWS上的一些scala JS内容提供服务。我们注意到一段时间后,服务器开始在日志中抛出下面的错误,尽管如此,某些URL的工作却在浏览器中出现Failed to load resource: net::ERR_CONTENT_LENGTH_MISMATCH错误,但某些文件无法正确下载。服务器日志看起来像下面(它正是在所有情况下相同的错误):Akka Http错误:InvalidContentLengthException

[ERROR] [09/29/2016 21:29:22.150] [designer-actor-system-akka.actor.default-dispatcher-56831] [akka.actor.ActorSystemImpl(designer-actor-system)] Outgoing response stream error akka.http.scaladsl.model.InvalidContentLengthException: HTTP message had declared Content-Length 997 but entity data stream amounts to 164 bytes less at akka.http.scaladsl.model.InvalidContentLengthException$.apply(ErrorInfo.scala:50) at akka.http.impl.engine.rendering.RenderSupport$CheckContentLengthTransformer$$anon$2.onUpstreamFinish(RenderSupport.scala:130) at akka.stream.impl.fusing.GraphInterpreter.processEvent(GraphInterpreter.scala:732) at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:616) at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:471) at akka.stream.impl.fusing.GraphInterpreterShell.receive(ActorGraphInterpreter.scala:433) at akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:603) at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:618) at akka.actor.Actor$class.aroundReceive(Actor.scala:484) at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:529) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526) at akka.actor.ActorCell.invoke(ActorCell.scala:495) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257) at akka.dispatch.Mailbox.run(Mailbox.scala:224) at akka.dispatch.Mailbox.exec(Mailbox.scala:234) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

我们正在运行阿卡版本2.4.7和OpenJDK的版本,如果我们重启阿卡1.8.0_101-b13.The错误消失HTTP服务器,但几个小时后又回来了。

不知道是什么导致了问题。任何帮助将不胜感激。

回答

2

我想我想清楚是什么导致了它。我们有一个自动部署过程,将HTML/CSS/Javascript文件部署到Akka服务器。看起来像Akka服务器缓存内容大小,如果静态文件更新而不重新启动,它会给InvalidContentLengthException。我们将重新启动作为部署过程的一部分,并且问题似乎已经解决。