Java中的Thrift发生java.lang.OutOfMemoryError错误

时间:2015-05-12 14:43:41

标签: java thrift

我开始使用Thrift框架,基本示例都是成功的,只有当我尝试使应用程序更多的方法发生错误时才会出现错误java.lang.OutOfMemoryError。抛出异常下方。

Exception in thread "Thread-2" java.lang.OutOfMemoryError: Java
 heap space org.apache.thrift.TApplicationException: connecting failed:
 out of sequence response   
 at org.apache.thrift.protocol.TBinaryProtocol.readStringBody(TBinaryProtocol.java:379)
 at org.apache.thrift.protocol.TBinaryProtocol.readString(TBinaryProtocol.java:374)
 at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:225)
 at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:27)
 at br.com.gadje.servico.client.CollectorReceiver.run(CollectorReceiver.java:32)
 at java.lang.Thread.run(Thread.java:745)

我开始客户端TTransport如下:

 TTransport transport = new TSocket (server, port);
 Protocol protocol = new TBinaryProtocol (transport); 

1 个答案:

答案 0 :(得分:0)

我注意到当您的服务器使用OutOfMemoryError但您尝试以其他方式访问它时TBinaryProtocol发生了django-silk,例如使用浏览器(说HTTP)。也许这也是你的问题?

如果您想使用Javascript客户端访问Java服务器,请查看此示例:https://github.com/LukeOwncloud/ThriftJavaJavascriptDemo