前言:

  参加Unix/Linux相关高级研发职位时,是否经常会被文档,单机允许最大进程数、线程数和Socket连接数,而你却感到束手无措呢?本文给你一个最为详细的答案。

一、最大进程数

  运行Linux ulimit -a指令,我们可以看到:max user processes =1024 运行结构如下图所示:

[root@localhost ~]# ulimit
unlimited
[root@localhost ~]# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 1830
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1024
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

 二、最大线程数

[zhangzl@localhost ~]$ cat /proc/sys/kernel/threads-max
3660

看到最大线程数的限制了吗?3660

三、最大Socket连接数

关于最大Socket连接数,因为一个Socket连接需要占用一个文件句柄,所以支持打开的连接数就是文件数句柄数:open files (-n) 1024

四、一个进程允许启动的最大线程数

  Linux环境,一个进程分配的虚拟内存空间是4G,可用2G,每个线程Stack空间为10M,2048/10  = 200,所以一般的单进程能开通的线程数也就可以确定了。约为200个。

五、ulimit命令详解

参  数:
-a  显示目前资源限制的设定。
-c <core文件上限>  设定core文件的最大值,单位为区块。
-d <数据节区大小>  程序数据节区的最大值,单位为KB。
-f <文件大小>  shell所能建立的最大文件,单位为区块。
-H  设定资源的硬性限制,也就是管理员所设下的限制。
-m <内存大小>  指定可使用内存的上限,单位为KB。
-n <文件数目>  指定同一时间最多可开启的文件数。
-p <缓冲区大小>  指定管道缓冲区的大小,单位512字节。
-s <堆叠大小>  指定堆叠的上限,单位为KB。
-S  设定资源的弹性限制。
-t <CPU时间>  指定CPU使用时间的上限,单位为秒。
-u <程序数目>  用户最多可开启的程序数目。
-v <虚拟内存大小>  指定可使用的虚拟内存上限,单位为KB。

知识点查缺补漏贴03:单机最大进程数,线程数和Socket连接数相关推荐

  1. Android查缺补漏(IPC篇)-- 进程间通讯之Socket简介及示例

    本文作者:CodingBlock 文章链接:http://www.cnblogs.com/codingblock/p/8425736.html 进程间通讯篇系列文章目录: Android查缺补漏(IP ...

  2. 专题1:python之列表,字典知识点查缺补漏

    一.列表 1.列表索引 输出列表最后一个元素: list1 = [1, 2, 3, 4, 5] result = list1[-1] print(result)# 输出: 5 2.列表切片 语法:li ...

  3. C语言知识点查缺补漏

    1.控制不同进制的输出 int a = 100;printf("原样输出\n");printf("16进制为a=0x%x\n",a);printf(" ...

  4. 查缺补漏:集和与非平凡属性

    查缺补漏:集和与非平凡属性 前面的习题和知识点补充 Conjunctive normal form(CNF)是布尔逻辑的一种方法,它将公式表示为带有AND或or的子句的连词.由连词or AND连接的每 ...

  5. 「查缺补漏」高频考点浏览器面试题

    前言 想要成为一名合格的前端工程师,掌握相关浏览器的工作原理是必备的,这样子才会有一个完整知识体系,要是「能参透浏览器的工作原理,你就能解决80%的前端难题」. 这篇梳理的话,更多的是对浏览器工作原理 ...

  6. EFCore查缺补漏(二):查询

    相关文章: EFCore查缺补漏 第 20 轮 TechEmpower 评测结果出炉了,ASP.NET Core 的 Plaintext 成绩名列前茅,带着 EFCore 的测试却在 Single q ...

  7. I2C总线学习—查缺补漏—S3C2440的I2C控制器

    I2C总线学习-查缺补漏-S3C2440的I2C控制器                  学习了IIC总线协议的理论部分,觉得应该学习具体操作2440的IIC控制器,毕竟最终都是为了学习S3C2440 ...

  8. I2C总线学习—查缺补漏—应答信号ACK

    I2C总线学习-查缺补漏-应答信号ACK           IIC协议规定,当主机作为接收设备时,主机对最后一个字节不应答,以向发送设备(从设备)标识数据传送结束.这是因为每次传输都应得到应答信号后 ...

  9. I2C总线学习—查缺补漏—对数据有效性的思考

    I2C总线学习-查缺补漏-对数据有效性的思考 IIC协议规定:SDA上传输的数据必须在SCL为高电平期间保持稳定,SDA上的数据只能在SCL为低电平期间变化.IIC期间在脉冲上升沿把数据放到SDA上, ...

最新文章

  1. C++学习笔记24,方法重写与方法隐藏
  2. 网络表述学习经典论文——DeepWalk
  3. JAVA NIO 内存泄露
  4. 【发现】彻底清除www.go2000.cc的清除方法
  5. python 文本分析库_Python有趣|中文文本情感分析
  6. 虚拟机ping不通主机,但是主机可以ping通虚拟机(转载)
  7. Android 沉浸式透明状态栏与导航栏
  8. centos安装--两张光盘
  9. 设置devenv命令的启动版本
  10. winform学习之-----页面设计-20160523
  11. 论SetItemData和GetItemData
  12. 上海译文公布2019年“新书目录” 名家名译作品结集出版
  13. 公式编辑器里面添加空格
  14. GB28181协议实现系列之----SDK Demo发布(7)
  15. android 动态修改pdf,PDF编辑器安卓版,手机也能修改PDF文档
  16. 基于matlab的语音信号处理
  17. VS 配置Directx
  18. 【JY】力荐 | 区域建筑地震安全性有限元分析示例
  19. 揭秘!女程序员为啥更赚钱?这4个大招,用Python做副业躺赚
  20. 汇编语言(Assembly Language)简介

热门文章

  1. php开发兴趣培训班,培训班学PHP,感觉兴趣越来越低,哎,真的很迷茫了!
  2. 精彩!对外经济贸易大学信息学院人工智能+交叉学科建设研讨会成功举办!
  3. K11794 智力大冲浪
  4. linux 时间戳 单调递增时间(CLOCK_MONOTONIC_RAW)
  5. 掷骰子游戏成为百万富翁了解一下!
  6. kaggle竞赛-树叶图片分类项目
  7. 二叉树树叶统计算法详解
  8. 一个视屏的时间教你学会Java面向对象进阶
  9. android 固定底栏位置,电脑底端任务栏固定位置应该如何设置?在哪里设置?
  10. 国内空气质量数据开源了