`
pany
  • 浏览: 90514 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

linux下的并发数量

阅读更多

 

在部署系统后,为了增加系统并发量,系统响应速度,做了一些工作;遂整理如下。

1、修改server.xml文件

<Connector port="80" protocol="HTTP/1.1"
               maxHttpHeaderSize="8192"
               maxThreads="1000" minSpareThreads="75" maxSpareThreads="300"
               enableLookups="false" redirectPort="8443" acceptCount="200"
               connectionTimeout="50000" disableUploadTimeout="true"/>
主要修改了maxThreads、acceptCount。

引用
Google资料说“如果要加大并发连接数,应同时加大这两个参数。web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。”

2、增加tomcat启动初始内存设置;catalina.sh – 增加了参数内存设置

内存为2G情况:

JAVA_OPTS="-server -Xms1500M -Xmx1500M -Xss256K -Djava.awt.headless=true -XX:PermSize=64M -XX:MaxPermSize=128m"

(补充:-Dfile.encoding=utf8 加入这个,是设置文件写入的编码方式)

引用

Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同
堆内存分配
JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx相等以避免在每次GC 后调整堆的大小。
非堆内存分配
JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。
JVM内存限制(最大值)
首先JVM内存限制于实际的最大物理内存,假设物理内存无限大的话,JVM内存的最大值跟操作系统有很大的关系。简单的说就32位处理器虽然可控内存空间有4GB,但是具体的操作系统会给一个限制,这个限制一般是2GB-3GB(一般来说Windows系统下为1.5G-2G,Linux系统下为2G-3G),而64bit以上的处理器就不会有限制了。

-Djava.awt.headless=true

Java在图形处理时调用了本地的图形处理库。在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题。如果将程序移植到Linux/Unix上的时候有可能出现图形不能显示的错误。提示信息:"Can't connect to X11 window server"这是由于Linux的图形处理需要一个X Server服务器。解决办法就是设置参数。

Xss:每个线程的Stack大小。Stack的大小限制着线程的数量。如果Stack过大就好导致内存溢漏。-Xss参数决定Stack大小,例如-Xss1024K。如果Stack太小,也会导致Stack溢漏。

分享到:
评论

相关推荐

    linux高并发服务器带数据库操作

    epoll是Linux下用于I/O多路复用的高效机制,通过它,服务器可以监控大量文件描述符(如网络套接字),并在有事件发生时进行非阻塞式响应,显著提高了并发性能。 其次,C语言作为底层系统编程语言,具有执行效率高...

    Linux下高并发socket最大连接数所受的各种限制(详解)

    下面小编就为大家带来一篇Linux下高并发socket最大连接数所受的各种限制(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    基于多线程的Linux下并发服务器的实现研究.pdf

    总结来说,基于多线程的Linux并发服务器通过线程同步和通信机制,以及高效的网络编程技术,实现了对大量并发请求的有效处理。设计时应考虑线程管理、资源分配、同步策略等因素,以达到最佳的性能表现。通过持续的...

    linux并发回音服务器与客户端

    在Linux系统中,实现并发回音服务器和客户端是学习网络编程和多线程技术的一个经典实践。这个项目涉及到了许多核心的计算机科学概念,包括网络通信、进程管理、并发处理和I/O操作。以下是关于这个主题的详细知识阐述...

    优化Linux的内核提高服务器并发能力

    Linux的内核优化是一个复杂且效果显著的方法,尤其在硬件资源有限的情况下,通过调整内核参数来提高并发处理能力,能够有效提高服务器性能。服务器并发能力的提高不仅能够优化网络服务的响应时间,还能在一定程度上...

    提高linux并发处理能力.docx

    ### 提高Linux并发处理能力的关键知识点 #### 一、文件数限制修改 在Linux系统中,为了提升并发处理能力,我们需要关注系统对于每个进程可以打开的文件数量的限制。这是因为每个TCP连接都会创建一个socket句柄,而...

    [服务器性能优化]Linux下高并发socket最大连接数和sysctl(time_wait)设置

    在Linux系统中,服务器性能优化是一项关键任务,特别是在处理高并发网络应用时。本文将深入探讨如何优化Linux下的socket连接数以及如何调整sysctl参数,特别是time_wait状态的影响。这有助于提升服务器处理大量并发...

    linux测试使用shell并发脚本

    "Linux测试使用Shell并发脚本"这个主题涉及到的是如何利用Shell脚本来实现多任务并行执行,提高工作效率。在实际工作中,这样的脚本对于进行性能测试、自动化测试等场景尤其有用。 首先,我们来理解一下Shell脚本的...

    tcp_server_v1.rar_linux TCP并发_linux tcp server

    在Linux系统中,TCP(传输控制协议)是网络通信中常用的一种面向连接的、可靠的、基于字节流的传输层通信协议。...通过阅读和理解代码,你可以深入学习Linux下的TCP并发服务器编程,进一步掌握网络编程的技巧。

    如何测试Linux下tcp最大连接数限制详解

    前言 关于TCP服务器最大并发连接数有一种误解就是“因为端口号上限为65535,所以TCP服务器理论上的可承载的最大并发连接数也是...这个测试主要是想搞明白Linux下哪些参数配置限制了连接数的最大值,上限是多少。 一、先

    Linux下高并发socket最大连接数所受的各种限制

    总结来说,为了在Linux下处理高并发Socket连接,我们需要关注文件描述符的限制,并通过调整用户和系统级别的限制来提高并发数。同时,注意系统资源的合理分配和管理,以确保整体性能和稳定性。这个过程涉及多个层次...

    linux下用select并发服务器

    总结来说,`select`在Linux下是一种基础的并发服务器实现方式,它允许我们同时处理多个客户端的连接请求和数据传输。尽管对于大规模并发场景存在效率问题,但在小规模应用中,`select`仍然是一个实用且可靠的工具。...

    基于Linux的高并发网络聊天系统设计.pdf

    在Linux环境下,主要有三种实现方式:多线程、线程池和IO复用模型。多线程模式允许服务端并行处理多个客户端请求,提高了处理效率。Linux提供了如pthread_create和pthread_join等线程操作接口,用于创建和管理线程。...

    linux下的高并发处理select 和epoll

    在Linux系统中,处理高并发I/O事件时,select和epoll是两种常见的技术。本文将详细介绍这两种技术,以及它们在处理大量并发连接时的特点和优势。 首先,我们来看看`select`函数。`select`是一种古老的I/O多路复用...

    linux socket 并发C/S模型

    在并发处理中,为了防止资源耗尽,服务器通常会限制同时接受的连接数量,这可以通过调整`listen()`函数的第二个参数(backlog)实现。 总结,"linux socket 并发C/S模型"涉及的关键知识点包括: 1. TCP协议的概念和...

    Linux C语言 线程池 状态机 并发处理Demo

    总的来说,这个Demo覆盖了Linux环境下C语言实现多线程编程的关键知识点,包括线程池的管理、线程同步(互斥锁)、状态机的设计、任务的调度以及高并发处理。通过对这些内容的学习和实践,开发者可以深入理解多线程...

    Linux下tcp并发服务器的几种设计的模式套路

    ### Linux下TCP并发服务器的设计模式详解 在现代网络通信领域,TCP并发服务器是处理大量并发连接请求的关键技术之一。为了适应不同的应用场景与需求,Linux环境下存在多种TCP并发服务器的设计模式。下面将详细介绍...

    linux下限值并发速度

    ### Linux 下 Apache 限制并发连接速度 在 Linux 环境中,Apache 是一个非常流行的 Web 服务器软件,被广泛应用于各种网站和应用服务中。然而,在高并发访问的情况下,如何有效地控制和管理连接数量成为了确保系统...

    Linux环境下高并发web服务器-的设计与实现.docx

    在高并发环境中,线程池可以有效地控制并发数量,提高系统效率。 对于Web服务器来说,HTTP长连接可以提高效率,但也可能消耗大量服务器资源。为了解决这个问题,服务器可以使用定时器来管理这些长连接,当连接超...

Global site tag (gtag.js) - Google Analytics