searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

Java应用影响线程数量的因素

2023-12-14 05:55:09
5
0
> JVM : 内存不够会影响Thread的Create, 特别是C Heap. 以下JVM参数主要影响的是剩余内存的大小
* Xmx
  * 堆大小
* Xss
  * 线程堆栈大小
  * 占用越小,创建的线程数量越多
* MaxPermSize
  * 持久代
  * 存放Class和Meta信息
  * 不会被垃圾回收
  * 默认物理内存的1/64
* MaxDirectMemorySize
  * 堆外内存上限
* ReservedCodeCacheSize
  * 代码缓存区
  * JIT编译的代码
 
> Kernel
* max_user_processes
  * 用户进程数量限制
  * ulimit -u最大值
* max_map_count
  * 涉及系统内存分配操作, 若超过sysctl_max_map_count则创建线程失败
  * /proc/sys/vm/max_map_count, 默认65530
* max_threads
  * /proc/sys/kernel/threads-max
  * 受到物理内存限制,在系统做fork时, 会初始化此值
  * max_threads = mempages / (8 * THREAD_SIZE / PAGE_SIZE);
* pid_max
  * 分配的PID数量限制
  * /proc/sys/kernel/pid_max
0条评论
0 / 1000
华****裕
14文章数
0粉丝数
华****裕
14 文章 | 0 粉丝
原创

Java应用影响线程数量的因素

2023-12-14 05:55:09
5
0
> JVM : 内存不够会影响Thread的Create, 特别是C Heap. 以下JVM参数主要影响的是剩余内存的大小
* Xmx
  * 堆大小
* Xss
  * 线程堆栈大小
  * 占用越小,创建的线程数量越多
* MaxPermSize
  * 持久代
  * 存放Class和Meta信息
  * 不会被垃圾回收
  * 默认物理内存的1/64
* MaxDirectMemorySize
  * 堆外内存上限
* ReservedCodeCacheSize
  * 代码缓存区
  * JIT编译的代码
 
> Kernel
* max_user_processes
  * 用户进程数量限制
  * ulimit -u最大值
* max_map_count
  * 涉及系统内存分配操作, 若超过sysctl_max_map_count则创建线程失败
  * /proc/sys/vm/max_map_count, 默认65530
* max_threads
  * /proc/sys/kernel/threads-max
  * 受到物理内存限制,在系统做fork时, 会初始化此值
  * max_threads = mempages / (8 * THREAD_SIZE / PAGE_SIZE);
* pid_max
  * 分配的PID数量限制
  * /proc/sys/kernel/pid_max
文章来自个人专栏
我的网络
6 文章 | 2 订阅
0条评论
0 / 1000
请输入你的评论
0
0