我们正在使用apache camel从目录中读取文件并将内容放入Glassfish 4.1服务器内的JMS主题中。其他软件部分正在阅读此JMS主题并处理内容。
我们现在遇到的问题是,服务器运行时负载可接受,但几个小时后内存消耗增加,服务器开始交换。那时服务器失控了。
任何人都可以给我一些提示(JMS ConnectionFactory,ThreadPools等)我必须转向吗?
答案 0 :(得分:0)
你的JMS代理应该有办法配置最大内存/消息数量以缓冲内存中给定目的地等等...... ActiveMQ让你configure this可以轻松地尝试类似的事情。
另外,如果您正在处理要解析的大文件(拆分等)......您可能会尝试启用流模式,因为这是解决内存使用的一般最佳做法...
否则,我会在你的未来看到一个堆转储来分析究竟是什么在吃掉记忆......