`
langzhe
  • 浏览: 286866 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

修改linux socket 连接数量 做erlang程序测试

阅读更多

 

第一种方法:需要注意的是 只有在当前shell下生效(我不懂这个知识点,花了我好几个小时)

ulimit -n 3000 3000个连接数

ulimit -s 256   每个连接占内存

ulimit -a 查看 两个shell都必须设置

第二种方法:修改配置文件

两个文件内容(从网上搜到的试过了,但没起作用)
/etc/sysctl.conf
fs.file-max=65532

/etc/security/limits.conf
* soft nofile 32768
* hard nofile 32768

 

http://blog.yufeng.info/archives/1380

今天看了一下上面老大的文章 又尝试了一下OK 了

添加上 重启Shell OK 

/etc/security/limits.conf
* soft nofile 32768
* hard nofile 32768

 

----修改相应的端口范围--------------------

vi /etc/sysctl.conf   

添加

net.ipv4.ip_local_port_range = 1024 65535

执行sysctl -p  生效

查看

sysctl -a|grep ip_local_port_range 
net.ipv4.ip_local_port_range = 32768    61000

 

-------------freebsd的配置-----------------

 

1. Linux用户使用FreeBSD,问FreeBSD ulimit怎么设置?

首先说明FreeBSD默认Shell是csh没有ulimit命令,但C Shell有limit命令。如果你想使用ulimit命令可以安装Bourne shell,Bash,Zsh

limit,ulimit比较

[neo@freebsd:~] limit
cputime         unlimited
filesize        unlimited
datasize        32768MB
stacksize       512MB
coredumpsize    unlimited
memoryuse       unlimited
memorylocked    unlimited
maxproc         5547
descriptors     65536
sockbufsize     unlimited
vmemorysize     unlimited
NPTS            unlimited
SWAP            unlimited

[neo@freebsd:~] env | grep SHELL
SHELL=/usr/local/bin/zsh

[neo@freebsd:~] ulimit -a
-t: cpu time (seconds)         unlimited
-f: file size (blocks)         unlimited
-d: data seg size (kbytes)     33554432
-s: stack size (kbytes)        524288
-c: core file size (blocks)    unlimited
-m: resident set size (kbytes) unlimited
-l: locked-in-memory size (kb) unlimited
-u: processes                  5547
-n: file descriptors           65536
-N  9: socket buffer size (kb) unlimited
-v: virtual memory size (kb)   unlimited
-N 11:                         unlimited
-N 12:                         unlimited

在Freebsd上,你能使用sysctl命令:

		

以 nofile - max number of open files 为例,limit、ulimit、sysctl实现同样的功能。

csh% limit descriptors unlimited
或者        
csh% limit descriptors 4096

sh$ ulimit -n unlimited
或者
sh$ ulimit -n 4096

sysctl kern.maxfiles=65536
sysctl kern.maxfilesperproc=65536
		

写入配置文件 sysctl.conf

[neo@freebsd:~] cat /etc/sysctl.conf
# $FreeBSD: src/etc/sysctl.conf,v 1.8.34.1.4.1 2010/06/14 02:09:06 kensmith Exp $
#
#  This file is read when going to multi-user and its contents piped thru
#  ``sysctl'' to adjust kernel values.  ``man 5 sysctl.conf'' for details.
#

# Uncomment this to prevent users from seeing information about processes that
# are being run under another UID.
#security.bsd.see_other_uids=0

#vm.pmap.shpgperproc: 2000
#vm.pmap.pv_entry_max: 13338058
kern.ipc.shm_use_phys=1
kern.maxfiles=65536
#ulimit -n 65536
kern.maxfilesperproc=65536
kern.ipc.somaxconn=2048

[neo@freebsd:~] /etc/rc.d/sysctl reload

[neo@freebsd:~] sysctl -a | grep maxfiles
kern.maxfiles: 65536
kern.maxfilesperproc: 65536
其他参考http://www.freebsd.org/doc/zh_CN/books/handbook/configtuning-kernel-limits.html
FreeBSD
查看端口号范围,并修改

meda076# sysctl net.inet.ip.portrange.first net.inet.ip.portrange.last
net.inet.ip.portrange.first: 10000
net.inet.ip.portrange.last: 65535
meda076# sysctl net.inet.ip.portrange.first=1024
net.inet.ip.portrange.first: 10000 -> 1024
meda076# sysctl net.inet.ip.portrange.first net.inet.ip.portrange.last
net.inet.ip.portrange.first: 1024
net.inet.ip.portrange.last: 65535
 
分享到:
评论
1 楼 toontong 2010-10-11  
修改方法
http://blog.csdn.net/toontong/archive/2010/04/14/5483654.aspx


   若要令修改ulimits的数值永久生效,则必须修改配置文档,可以给ulimit修改命令放入/etc/profile里面,这个方法实在是不方便,

   还有一个方法是修改/etc/sysctl.conf .

/etc/security/limits.conf 格式,文件里面有很详细的注释,比如

* soft  nofile 655360
* hard nofile 655360

星号代表全局, soft为软件,hard为硬件,nofile为<type>这里指可打开文件数。

把以上两行内容加到 limits.conf文件中即可。

另外,要使 limits.conf 文件配置生效,必须要确保 pam_limits.so 文件被加入到启动文件中。查看 /etc/pam.d/login 文件中有:
session required /lib/security/pam_limits.so

修改完重新登录就可以见到效果,可以通过 ulimit -n 查看。

相关推荐

    Erlang程序设计(第2版)1

    【Erlang程序设计(第2版)】是由Erlang之父Joe Armstrong撰写的一本经典著作,专注于介绍Erlang编程语言在并发、分布式和容错系统中的应用。本书适用于初学者和有一定经验的Erlang程序员。作者在书中讨论了如何利用...

    Erlang程序设计(第二版)及源码

    书中兼顾了顺序编程、并发编程和分布式编程,重点介绍如何编写并发和分布式的Erlang程序以及如何在多核CPU上自动加速程序,并深入地讨论了开发Erlang应用中至关重要的文件和网络编程、OTP、ETS和DETS等主题。...

    Erlang程序设计,包含完整目录和全套源码

    在Erlang中,创建和销毁进程非常快速,使得它成为处理大量并发连接的理想选择,常用于构建大规模的服务器应用。 Erlang的高性能主要体现在其内置的并发机制和错误恢复机制上。由于Erlang运行在BEAM虚拟机上,该...

    erlang程序设计与入门

    **Erlang程序设计与入门** Erlang是一种并发、函数式编程语言,主要用于构建分布式、高可用性、容错性强的系统。它的设计灵感来源于电信行业的需求,由瑞典爱立信公司于1986年开发。Erlang以其独特的并发模型、轻量...

    erlang程序设计相关例子程序

    通过对这些文件名的分析,我们可以看出这些Erlang程序涵盖了并发处理、进程通信、异常处理、服务器设计、数据处理和测试等多个方面,体现了Erlang在构建分布式系统中的强大功能。学习并理解这些示例,对于深入掌握...

    Erlang 20.3linux安装包

    1. **下载**:你可以从Erlang Solutions官网或者通过提供的压缩包文件"Erlang 20.3linux░▓╫░░ⁿ"和"Erlang 20.3linux安装包"下载Erlang的Linux二进制包。 2. **解压**:解压缩下载的文件到一个合适的目录,...

    Erlang程序设计 第2版

    Erlang程序设计 第2版 Erlang程序设计 第2版Erlang程序设计 第2版

    [Erlang程序设计]源代码

    **Erlang程序设计源代码详解** Erlang是一种面向并发、函数式编程语言,尤其在分布式系统和高可用性领域表现出色。本资源包含了《Erlang程序设计》一书的所有实例代码,旨在帮助读者深入理解Erlang语言的核心特性和...

    Linux下安装erlang

    Linux下傻瓜式安装erlang

    Erlang程序设计中文版

    在"Erlang程序设计中文版"这本书中,读者可以深入理解Erlang的核心概念和技术,从而掌握利用Erlang进行高效软件开发的技能。 1. **函数式编程**:Erlang是函数式编程语言的代表之一,它强调通过函数而不是变量状态...

    Erlang程序设计及源码

    本资源包含了一本Erlang程序设计的入门经典书籍及其配套源码,适合初学者深入理解Erlang编程。 1. **Erlang简介** Erlang以其强大的并发处理能力而闻名,它采用了轻量级进程模型,使得在单个系统中可以同时运行...

    Erlang程序设计及源代码打包

    **Erlang程序设计概述** Erlang是一种面向并发的、函数式的编程语言,由瑞典电信设备制造商Ericsson开发,主要用于构建高可用性、容错性强的分布式系统。《Erlang程序设计》这本书,作者是Joe Armstrong,他是...

    Erlang程序设计].源代码

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson为了实现分布式实时系统而开发...记得实践是学习编程的最好方式,尝试运行和修改这些源代码,看看它们是如何工作的,以此来加深对Erlang的理解。

    erlang程序设计(第二版)中文pdf

    erlang 程序设计(第二版) 中文 pdf

    erlang程序设计2

    erlang发明者写的书。erlang/otp一种高可靠性的平台。

    编写分布式的Erlang程序:陷阱和对策

    ### 编写分布式的Erlang程序:陷阱和对策 #### 摘要与背景 在探讨编写分布式的Erlang程序时,本篇文章聚焦于Erlang编程语言中的分布式特性,尤其是那些容易忽视的陷阱及其对应的解决方案。Erlang作为一种专为构建...

    Erlang程序设计中文版(完整书签)

    Erlang程序设计中文版(完整书签),清晰版!!! Erlang开发必备

Global site tag (gtag.js) - Google Analytics