- 浏览: 87998 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
hairongtian:
我想问一下在GC中的gc roots是什么?教科书的看不懂,能 ...
JVM-GC实践总结(纠正并发线程数 转载)
在部署系统后,为了增加系统并发量,系统响应速度,做了一些工作;遂整理如下。 1、修改server.xml文件 <Connector port="80" protocol="HTTP/1.1" 引用 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选项设置为相同 -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溢漏。
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个左右。”
堆内存分配
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以上的处理器就不会有限制了。
发表评论
-
JVM 运行时数据区(转)
2012-07-11 23:02 998运行时数据区 java虚拟机定义了若干种程序运行时使用 ... -
图解JVM 内存分配
2012-07-10 23:57 11691.简介 现摘录一段Java5 ... -
JVM-GC实践总结(纠正并发线程数 转载)
2012-07-10 16:27 3495首先感谢阿宝同学的帮 ... -
深入Java虚拟机:JVM中的Stack和Heap
2012-07-10 14:26 1058在JVM中,内存分为两个部分,Stack(栈)和He ... -
JVM分代垃圾回收策略的基础概念
2012-07-10 13:50 1333由于不同对象的生命周期不一样,因此在JVM的垃圾回收策略中 ... -
Java虚拟机(JVM)中的内存设置详解(转载)
2012-07-09 17:13 1072在一些规模稍大的应用 ... -
JVM原理_内存篇(转载)
2012-07-09 16:56 2135一、JVM简介 ... -
JVM参数调优的八条经验(转载)
2012-07-09 14:35 919要想配置好JVM参数,需要对年轻代、年老代、救助空间和永久代有 ... -
Tomcat负载均衡原理详解及配置(Apache2.2.19+Tomcat7.0.12)
2012-06-30 11:45 1199使用Tomcat的童鞋们注意了。为了增加tomcat的性能和稳 ... -
Tomcat和Terracotta服务器将普通的Web应用部署到集群中,实现跨Tomcat节点的session复 制
2012-06-30 11:31 1315本文介绍如何配置Tomcat和Terracotta服务器将普通 ... -
tomcat session 持久化会话
2012-06-30 11:29 1567tomcat6 中关闭服务 会自动把session持久化 ... -
Tomcat集群Session丢失解决方案
2012-06-29 01:38 4371这几天单服务器整合项目很正常,集群的时候问题就来了,配 ... -
nginx+tomcat集群+session复制
2012-06-29 01:34 1205ulimit -SHn 65535 echo " ... -
网站的静态化处理
2012-06-26 21:10 807urlrewritefilter 下载: htt ... -
linux+nginx+tomcat负载均衡,实现session同步
2012-06-21 15:18 3868花了一个上午的时间研究nginx+tomcat的负载均衡测试, ... -
tomcat6_apache2.2_ajp负载均衡加集群实战 [转]
2012-04-26 16:07 893秀脱linux笔记之tomcat6_apa ... -
JVM内存最大能调多大分析-转帖
2012-02-18 12:48 1357JVM内存最大能调多大分析【经典】 上次用webl ... -
nginx for windows之负载均衡
2011-05-06 17:53 9281.编辑c:\nginx\conf\nginx.conf ... -
Tomcat6性能调优 出现java.lang.OutOfMemoryError: PermGen space
2010-08-03 13:51 1345Tomcat6在部署应用中,Server报错:java.lan ... -
APACHE 2.2.8+TOMCAT6.0.14配置负载均衡
2010-01-21 02:11 0目标: 使用 apache 和 tomcat ...
相关推荐
下面小编就为大家带来一篇Linux下高并发socket最大连接数所受的各种限制(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
前言 关于TCP服务器最大并发连接数有一种误解就是“因为端口号上限为65535,所以TCP服务器理论上的可承载的最大并发连接数也是...这个测试主要是想搞明白Linux下哪些参数配置限制了连接数的最大值,上限是多少。 一、先
在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket...
在Linux下用C写的一个简易线程池。系统是RedHat 9,gcc版本"gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)"。文件夹里的源码是按工程组织好的,在文件夹下的test目录下面有一个小的测试程序和Makefile,编译后即可...
│ 高并发编程第一阶段31讲、如何给你的应用程序注入钩子程序,Linux下演示.mp4 │ 高并发编程第一阶段32讲、如何捕获线程运行期间的异常.mp4 │ 高并发编程第一阶段33讲、ThreadGroup API介绍之一.mp4 │ 高...
问题描述:在Linux系统中高并发的Squid服务器,TCP TIME_WAIT套接字数量经常达到两、三万,服务器很容易被拖死。解决方法:通过修改Linux内核参数,可以减少linux服务器的IME_WAIT套接字数量。vi /etc/sysctl.conf...
关于系统的内存使用,《嵌入式Linux内存使用与性能优化》试图完成两项任务:增加系统整体的空闲内存数量,从而提高进程的并发能力:使系统在长时间运行后,仍然能够保持较高数量的空闲内存。《嵌入式Linux内存使用与...
│ 高并发编程第一阶段31讲、如何给你的应用程序注入钩子程序,Linux下演示.mp4 │ 高并发编程第一阶段32讲、如何捕获线程运行期间的异常.mp4 │ 高并发编程第一阶段33讲、ThreadGroup API介绍之一.mp4 │ 高...
目前Linux平台的Web服务器主要基于进程或线程机制,面对大数量的并发请求,延时现象较为明显。这主要原因在于服务器存在着利用率不高,资源消耗大等问题。文中利用信号量机制和生产者一消费者模型,设计基于多线程池...
项目是在Linux下以C++开发语言搭建的Web服务器,服务器可以支持相对数量的客户端并发和及时响应,该项目支持用户注册、登录,访问图片和视频。1.利用IO多路复用技术Epoll与线程池实现Reactor高并发模型。 2.利用主从...
当然,并发数高,需要的内存也更大,所以,即便是并发数量的急剧提高对性能影响不大,但是内存总是有限的,换句话说,并发数也总是有限制的,不可能无限增加。 (3) 即使有10万个并发连接(同一时刻有10万个客户端...
针对TD-LTE系统基站应用,提出一种Linux用户空间下的...结合哈希表、相对定时算法等技术,实现大数量定时器的高效管理,以Linux系统定时器单位为定时器粒度,定时器池满足基站高层协议软件大数量并发任务的应用需求。
<12> 可以通过配置maxConcurrentStreamExecution限制HTTP/2单个连接的并发stream数量; 2. Connector变化 不再支持BIO,支持NIO。如果细究会发现Tomcat有两个NIO Connector,一个是Http11NioProtocol,另一个是...
在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在linux新的内核中,有了一种替换它的机制,就是epoll。 select()和poll() IO多路复用模型 select的...
在Linux系统如何修改TCP连接数,文件数限制修改、网络端口限制修改;修改用户进程可打开文件数限制;修改网络内核对TCP连接的有关限制;使用支持高并发网络I/O的编程技术
例如“DEL/AR *.*”表示删除当前目录下所有只读文件,“DEL/A-S *.*”表示删除当前目录下除系统文件以外的所有文件 del /S /Q 目录 或用:rmdir /s /Q 目录 /S删除目录及目录下的所有子目录和文件。同时使用参数/Q ...
对于应用高并发,DB千万级数量该如何设计系统哪? 125 高性能服务器设计 130 优势与应用:再谈CDN镜像加速技术 131 除了程序设计优化,zend+ eacc(memcached)外,有什么办法能提高服务器的负载能力呢...
消除了对Nvidia施加到消费级GPU的同时NVENC视频编码会话的最大数量的限制。 允许在消费级GPU上使用NvFBC。 应该使用与NVENC patch.sh相同的方式来应用,除了必须使用patch-fbc.sh 。 主要目标操作系统是GNU / ...
SFPSocketLock For PHP (高并发网络锁 For PHP)多台服务器间通信,文件锁和...其他说明由于windows下cygwin不支持epoll,用select实现如果在linux下,根据自己的需求,可以将select换成epoll方式提高连接数量级后期版本目标
13.2.1 预创建固定服务器进程的数量 13.2.2 动态的管理子进程 13.2.3 重用服务器子进程 本章小结 第十四章 原始套接字编程实践 14.1 原始套接字 14.1.1 原始套接字的创建 14.1.2 ...