Я начинаю использовать инфраструктуру Thrift, основные примеры успешны, только когда я пытаюсь сделать приложение, больше методов возникает ошибка java.lang.OutOfMemoryError. Ниже исключения.java.lang.OutOfMemoryError ошибка возникает в Thrift в Java
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);
Вы пытаетесь запустить JVM с большим выделением памяти? – Kon
java -Xms = 512m -Xmx = 512m. Используйте значение, соответствующее вашим потребностям. – Dagriel
Я задаю JVM Xmx и Xms. Глядя на код Ошибка Thrift возникает в TBinaryProtocol классе в методе readStringBody, когда он будет инициализировать байтовый вектор. Я не знаю, почему, но размер, передаваемый при запуске, слишком велик. –