提高openfire最大连接数

影响连接数的元素包含三种:
1)    Linux的系统参数
2)    进程自身可以创建的线程数
3)    Openfire自身系统参数
Linux系统参数
1.    Ulimit –n 265535
     在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄),这个数字可以设的更大。
    此命令是临时更改,也可以通过修改文件/etc/security/limits.conf
2.    net.ipv4.ip_conntrack_max=265535
系统允许的最大跟踪连接条目。在/etc/sysctl.conf文件中增加此属性,并运行>/sbin/sysctl.conf –p
另外在sysctl -p的时候A报error: 'net.ipv4.ip_conntrack_max' is an unknown key ,通过以下命令修正:
            modprobe ip_conntrack
            echo "modprobe ip_conntrack" >> /etc/rc.local

3.    fs.file-max = 265535
系统级别的能够打开的文件句柄的数量,ulimit 是进程级别的
4.    kernel.threads-max=265535
系统可以生成的最大线程数
5.    vm.max_map_count=265535
定义了一个进程能拥有的最多的内存区域
6.    其他参数可以如下设置:
     net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 0
kernel.msgmnb = 265536
kernel.msgmax = 265536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_sack = 0
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.ip_local_port_range = 1024 60000
net.ipv4.tcp_window_scaling=0
net.ipv4.tcp_no_metrics_save=1

JVM参数
JVM中可以生成的最大数量由JVM的堆内存大小、Thread的Stack内存大小、系统最大可创建的线程数量三个方面影响:
(MaxProcessMemory - JVMMemory - ReservedOsMemory) / (ThreadStackSize) = Number of threads
MaxProcessMemory 指的是一个进程的最大内存
JVMMemory         JVM内存
ReservedOsMemory  保留的操作系统内存
ThreadStackSize      线程栈的大小

OpenFire系统属性
cache.username2roster.size: 12000000
cache.group.size: 40000000
cache.userCache.size: 35000000
cache.lastActivity.size: 1500000
cache.offlinePresence.size: 1500000

注:部分参数未实际检验

转载于:https://my.oschina.net/vdroid/blog/311574

提高openfire最大连接数相关推荐

  1. OpenFire源码学习之十九:在openfire中使用redis插件(上)

    Redis插件 介绍 Redis是目前比较流行的NO-SQL,基于K,V的数据库系统.关于它的相关操作信息,本人这里就不做重复了,相关资料可以看这个网站http://www.redis.io/(官网) ...

  2. mysql故障诊断_mysql常见故障诊断

    作为故障预警,应该尽量把问题扼杀在摇篮中,当出现问题及时处理,否则等到服务器宕机,再去"救火"工作,往往不能第一时间准确诊断.所以应建立监控流程,能够提前预警阀值,马上查看问题,降 ...

  3. JSP之数据库连接池·笔记

    连接池技术 连接池简介 通常情况下每访问一次数据库都要建立数据库的连接,当需要多次连接数据库的项目时就会消耗一定的资源,并延长了访问数据库的时间,当访问量较高时会影响系统的性能.所以连接池诞生了.所谓 ...

  4. 5G技术在广播电视网络中的应用

    5G技术在广播电视网络中的应用 摘要:作为一名学习广播电视工程的大三学生,我密切关注世界上的新技术,了解到了目前世界上的科技积累深厚的国家,都已经开始研究5G技术,期望在各类传媒渠道中应用该项技术提高 ...

  5. 什么代码小号cpu_标配的小号

    摘要:运维工程师职业技能汇总大全(持续更新) 1. 基础知识 1.1 系统原理 1.1.1 Linux操作系统启动流程 a. 名词解释:BIOS 基本输入输出系统(Basic Input Output ...

  6. kubeadm 高可用k8s(v1.23.5)

    内核参数安排 cat << EOF > /etc/sysctl.d/k8s.conf################################################# ...

  7. Debian 11快速部署K8S

    建议先升级一个内核 #升级内核 echo "deb http://deb.debian.org/debian buster-backports main" > /etc/ap ...

  8. Linux之提高Nginx的安全性:受限server_tokens /user_agents/buffer_size/连接数/请求方法/外链/不用模块 使用日志/TLS/HTTPS/升级

    1.保持Nginx的及时升级 目前Nginx的稳定版本为1.14.0,最好升级到最新版本,看官方的release note你会发现他们修复了很多bug,任何一款产品的生产环境都不想在这样的bug风险下 ...

  9. 详解 Tomcat 的连接数与线程池

    原文出处:编程迷思 前言 在使用tomcat时,经常会遇到连接数.线程数之类的配置问题,要真正理解这些概念,必须先了解Tomcat的连接器(Connector). 在前面的文章 详解Tomcat配置文 ...

  10. tomcat 默认150连接数怎么支持几万大并发的?集群?

    刷脉脉看到这个问题,不错的问题值得讨论. 之前做过高并发场景下的网关应用,也针对于jetty.netty.jvm进行过参数配置与调优,对于下面几个同学的讨论分析下. 程序猿关平 怎么可能150连接数, ...

最新文章

  1. 树莓派3B 系统安装及初始化配置教程
  2. 【Spring框架家族】mybatis generator代码自动生成(看得上眼直接拿去用即可)
  3. Linux中fdisk硬盘分区方法
  4. 【CF 1191】Tokitsukaze, CSL and Stone Game//Tokitsukaze and Duel//Tokitsukaze and Strange Rectangle
  5. 【渝粤教育】国家开放大学2019年春季 1062文学英语赏析 参考试题
  6. python3调用java_Python3-JPype调用Java代码
  7. bootstap-栅格系统
  8. 微软使用 Fluent Design 对应用图标进行统一调整,并更新 Windows 10 Logo
  9. 【掩耳盗铃】[转载]北京铁路局:“北京站37号窗口售票员内部大量出票”是为分区售票...
  10. IE6不兼容 CSS 改CSS没效果 原因
  11. c#实现文件批处理:剪切、复制、删除、改名、分类等
  12. 80端口为什么要备案_Nginx只允许域名访问网站,禁止使用IP 访问80,443端口
  13. Please refer to E:\SSM\Distributed\edu-parent\edu-dao\target\surefire-reports for the individua
  14. Chrome 复制网页不可复制的文字
  15. 使用新浪API生成短连接
  16. 悟空遥控器 --- 手机投屏到电视 播放视频
  17. Python3读取h5,pkl,npz,npy格式的文件
  18. 3个小球放入4个盒子
  19. 机器人算法工程师入门指南(四)常用技能与如何备战offer
  20. wxPython安装终极方法

热门文章

  1. 查看Tensorflow 是使用GPU or CPU运行
  2. 从零基础入门Tensorflow2.0 ----九、44.4 签名函数转换成savedmodel
  3. python_datetime
  4. Filter Concatenationd的理解
  5. linux xps 13 wifi,戴尔XPS 13无线网卡替换教程和教程 | MOS86
  6. 一个例子搞懂Nacos服务发现
  7. Flutter之ScrollView简析
  8. 技术要扎扎实实的做,业余功夫也要修炼
  9. 新型超级生物计算机简介,自然形成的超级生物计算机
  10. python天气预报的功能介绍_40行Python代码实现天气预报和每日鸡汤推送功能