我们实现了RESTHEART以从MongoDB获取聚合数据。对于单个请求,数据会很好地满足要求。当我们通过在MongoDB上添加负载来开始在JMeter请求下检查这个时,我们在后端得到了异常。 我们与MongoDB工程师分享了这些例外情况,他们表示可能是因为restheart api问题。 有没有人遇到过这些问题?RESTHEART抛出异常
@Andrea Di Cesare,对此的任何帮助将不胜感激。
以下是详细信息 下面是一些错误与“内存不足”的示例URI。 REST API调用 http://ftc-lbeapoc202:8080/statdata/InsStatData/_aggrs/getStatDataByIssuerIdSectionName?avars= { 'issuerId':66915, 'sectionName': 'SCDPT1'} http://ftc-lbeapoc202:8080/statdata/InsStatData/_aggrs/getStatDataByIssuerIdSectionName?avars= { 'issuerId':66915, 'sectionName': 'SCDPT1', '年' 时间:2014年}
错误服务器日志:
[[1;31mERROR^[[0;39m org.restheart.handlers.ErrorHandler - Error handling
the request
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:3554)
at java.util.Arrays.copyOf(Arrays.java:3525)
at java.util.ArrayList.grow(ArrayList.java:272)
at java.util.ArrayList.ensureExplicitCapacity(ArrayList.java:246)
at java.util.ArrayList.ensureCapacityInternal(ArrayList.java:238)
at java.util.ArrayList.add(ArrayList.java:469)
at org.bson.codecs.BsonDocumentCodec.decode(BsonDocumentCodec.java:84)
at org.bson.codecs.BsonDocumentCodec.decode(BsonDocumentCodec.java:41)
at com.mongodb.operation.CommandResultArrayCodec.decode(CommandResultArrayCodec.java:52)
at com.mongodb.operation.CommandResultDocumentCodec.readValue(CommandResultDocumentCodec.java:53)
at org.bson.codecs
Error in response:
{
· _exceptions:
[
o {
§ exception: "java.lang.OutOfMemoryError",
§ exception message: "Java heap space"
}
],
· http status code: 500,
· http status description: "Internal Server Error",
· message: "Error handling the request, see log for more
information"
}
Thanks!
你期望有人在这里做什么?这个问题似乎与“API的内部工作”一样。因此,合乎逻辑的行动是直接向维护人员提出问题。如果这不是关于“单一电话”的错误,而是“随着时间的推移”发生,那么https://github.com/softinstigate/restheart/issues将是更好的地方要问。 –
你得到的数据有多大?您可能需要为您的java应用增加虚拟内存限制。 – Serge
@Serge我们得到的数据并不是那么大。当你增加虚拟内存时。你在谈论JMeter吗?因为我直接从JMeter中调用这些调用(没有自定义API) – Abhinav1singhal