风暴Drpc堆问题

时间:2014-05-17 17:56:37

标签: java apache-storm

我正在尝试调用远程Drpc服务器,该服务器将在正在运行的拓扑上执行我的功能。

客户端返回以下错误:

Caused by: java.lang.OutOfMemoryError: Java heap space
  at org.apache.thrift7.transport.TFramedTransport.readFrame(TFramedTransport.java:140)
  at org.apache.thrift7.transport.TFramedTransport.read(TFramedTransport.java:101)
  at org.apache.thrift7.transport.TTransport.readAll(TTransport.java:84)
  at org.apache.thrift7.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:378)
  at org.apache.thrift7.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:297)
  at org.apache.thrift7.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:204)
  at org.apache.thrift7.TServiceClient.receiveBase(TServiceClient.java:69)
  at backtype.storm.generated.DistributedRPC$Client.recv_execute(DistributedRPC.java:75)
  at backtype.storm.generated.DistributedRPC$Client.execute(DistributedRPC.java:61)
  at backtype.storm.utils.DRPCClient.execute(DRPCClient.java:41)
  at smile.util.DrpcDriver.main(DrpcDriver.java:26)
  ... 6 more

1)拓扑处于活动状态:

exclamation          ACTIVE     10         3            175

2)drpc server / daemon正在运行backtype.storm.daemon.drpc

3)storm .yaml有以下选项:

worker.childopts: " -Xmx768m -XX:+HeapDumpOnOutOfMemoryError "
drpc.servers: "<name of my host>"

storm.yaml有一个主机,一个端口已配置。

1 个答案:

答案 0 :(得分:0)

是否错误配置xmx.i会记住xmx和768m之间的半列。 请看这个文档。 http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html