目前的想法是限制每个线程的占用内存,避免因为用户查询大量数据占用内存,从而引发java的out of memory错误。
进程是可以控制的,线程的是没法控制的。只能增大Xmx Xms这些参数,或者优化程序。
避免因为用户查询大量数据占用内存 这个可以通过程序优化的方式来解决,比如:用分页、动态分页、流的方式向前台输出数据(估计jvm没问题浏览器都改卡死了)
如果 out of memory 了,请用 -Xmx 调高最大内存上限。
其他方案:
优化程序,及时释放引用,以利于 gc
不要在 Java 里存那么多数据,可存入 Redis 之类的内存数据库。
4 回答1.1k 阅读✓ 已解决
4 回答1.1k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
2 回答694 阅读✓ 已解决
2 回答1.7k 阅读
2 回答1.6k 阅读
2 回答1.3k 阅读
据我所知没有.
只有一个参数-Xss可以用来设置每个栈的大小