Bpmx实施经验
Bpmx是一个较大的平台,直接发布的话会有内存问题,经查阅一些资料,java1.5没有解决好之前版本的历史问题,所以在垃圾处理gc上有很多配置需要手动完成,之后的版本同上。
Bpmx平台自带的文档中部分解决了这个问题,在开发平台上运行没有问题。在直接发布到tomcat上的时候,也可由此确定此项目的内存需求,大约在500m到1g之间,class内存在256m,但是经测试,他的配置是有问题的。
接下来直接讨论具体的实施细节。
1、tomcat安装和项目拷贝目录没有变化。注意先配置jdk环境变量。
2、在tomcat安装目录下的bin文件夹,找到catalina.bat,右击鼠标选择编辑。在 @echo off下面插入一行,就是第二行,输入一下内容。
3、输入: set JAVA_OPTS=-server -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xmx2g -Xms2g -Xmn256m -XX:PermSize=128m -Xss256k -XX:MaxTenuringThreshold=31 -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70
4、保存退出后,还是在bin文件夹,双击打开startup.bat
5、弹出的命令窗口不要关闭,如果需要关闭服务,在这个命令窗口输入Ctr-C即可。
实施细节就这么些,这个配置将适用于2g以下内存的项目,这些数值需要符合一定的算法,不要随便修改这些参数,可能直接导致服务崩溃。根据需要可以删除-XX:+Print开头的属性项,在访问比较频繁的时候,大量的回显也会影响系统效率。
下面说一说原理方面的。
除回显配置外,其他的主要是两方面,内存设置和垃圾回收设置。根据资料提供的经验,-Xmx和-Xms应该输入相同的值,相应的-Xmn应当是这个值的4分之一,这个设置在绝大多数项目中就是足够的,但是在部署bpmx的时候,会出现OOM异常,消息大致是gc...limit,这个报错如果在百度上搜索是找不到的,基本上和第一条的都是出自一个版本,链接如下:http://blog.csdn.net/kongls08/article/details/8468713。这篇文章写得也很不错,但是只提到了3个报错,都不是关于gc的,所谓gc就是java的垃圾回收,这个报错的原理就是前面所说的,在旧版中sun公司没有预料到动态内存调用会像现在这么流行,从而在没有足够的配置的时候gc会产生一些类似于指针方面的问题。我不知道为什么关于gc的资料会这么少,直接搜索gc配置,又会弹出很多不想关的资料。都说程序员查东西需要谷歌,没办法我就只好上bing.com。都说这个搜索不怎么样,我还是找到了一些东西。先说说平台文档的问题,他建议的配置中-XX:MaxNewSize这种类似的东西,是适用于jdk1.3和jdk1.4的,在1.4以上已经被-Xmn所取代。配置的是新生代内存的最大值和初始值,但是新的配置中已经被并到了一起。持久内存空间-XX:PermSize和-XX:MaxPermSize是比较独立的一部分,如果在访问jsp文件的时候经常出错,就可以把这一对值调大一点。
在另一个站点中,我找到了处理垃圾回收的办法。http://hllvm.group.iteye.com/ group/wiki/2870-JVM。他的内存设得比我们的需求要大的多,但是我们的问题在于tomcat没有把丰富的系统资源利用起来,而不是系统资源不够,调的大一些暂时不会有问题。
Bpmx实施经验的更多相关文章
- CM记录-CDH大数据平台实施经验总结2016(转载)
CDH大数据平台实施经验总结2016(转载) 2016年负责实施了一个生产环境的大数据平台,用的CDH平台+docker容器的方式,过了快半年了,现在把总结发出来. 1. 平台规划注意事项 1.1 业 ...
- DDD实施经验分享—价值导向、从上往下进行(圈内第一个吃螃蟹DDD实施方案)
阅读目录: 1.背景 2.从业务开始 3.从战略到战术 4.借助外力推动研发(QA.领导.自动化测试) 5.领域模型与SAAS平台的内核(价值最大化) 6.最后 1.背景 DDD本身的技术就不介绍了, ...
- 3星|《绩效使能:超越OKR》:较全较新资料汇编,华为实施经验少
全书是关于绩效管理与OKR的比较新比较全的资料汇编.从泰勒的科学管理说起,一直到现代的KPI.最近的OKR.梳理了工业革命以来重要的绩效管理思想的具体方法.适应情况,详细讲OKR的来龙去脉.适应情况. ...
- 选错实施顾问公司 ERP项目九死一生
今天接到一个朋友的电话,他是一家企业老总.这位老总感到非常头疼的是他的企业选择了一款国际上名气很大的ERP软件,但实施效果却强差人意.他的疑问是"不是说只要选对了ERP产品,谁实施都能成功吗 ...
- CRM实施目标、需求、策略、厂商、流程等基本介绍全解
事实证明,有不少实施了CRM系统的企业经历了失败.这是为何?而据一个在线CRM论坛调查其失败的原因: 67%是因为缺乏组织和管理变革去适应CRM:如组织机构未调整.未融入企业文化.流程不清 ...
- CRM实施失败?请注意这6大问题及对策!
据Gartner调查显示:约50%的CRM项目不能达到客户期望.这一点与很多其他的IT项目状况非常类似,大多出于管理问题,供应商服务能力,项目执行不善等. 另据一个在线CRM论坛调查其失败的原因:67 ...
- 【TOP100案例专访】当当网工程师林嘉琦谈双11大促经验及APM实践
导读:第七届TOP100全球软件案例研究峰会将于11月30日-12月3日在北京国家会议中心举办,本届峰会以“释放AI生产力 让组织向智能化演进”为开幕式主题,旨在推动企业在趋势下拥抱AI.探索和思考A ...
- MES实施会有哪些情况?为你介绍两种常见的类型
MES项目实施顾问是一份极具挑战的工作,需具备大量的专业知识,以及丰富的实施经验.今天,小编为大家介绍最常见的两种MES实施顾问类型,希望对大家有所启发. 保姆型实施顾问 是指以实施顾问为主导,只要是 ...
- OA系统从选型到实施完整攻略
本文结合一线IT人士分享OA实施经验,单纯地讲述OA的选型与实施,为相关经验较少的IT人士提供真正的帮助. 一.如何选择OA系统 说起OA选型,稳定性.易用性.灵活性.成本和服务少不了.但是,只了解这 ...
随机推荐
- 修改CMD字符编码
1.参考网址: 1.1.http://blog.useasp.net/archive/2012/04/24/how_to_use_UTF8_encoding_in_Windows_CMD.aspx 1 ...
- log4jWARN Please initialize the log4j system properly解决办法
原因是没有对log4j这个jar进行文件配置. 要解决这个问题非常简单,建立LOG4J 的配置文件即可.在src 目录下创建配置文件,选择菜单File > New > File,文件名输入 ...
- python-05
首先是安装工具 Linux 安装mysql:mysql-server 安装python-mysql模块: python-mysqldb Windows 下载安装mysql python操作mysql模 ...
- C# 拆箱与装箱 要严格控制,数量多起来严重影响效率
int i = 5; object o = i; int j = (int)o; IComparer x = 5; 1. o的对象必须为一个引用,而数字5不是,则发生了装箱: 运行时将在堆上创建一个包 ...
- OpenCV计算点到直线的距离 数学法
我们在检测图像的边缘图时,有时需要检测出直线目标,hough变换检测出直线后怎么能更进一步的缩小区域呢?其中,可以根据距离来再做一判断,就涉及到了点与直线的距离问题. 点到直线距离代码如下: //== ...
- 空格用法
记录一下,空格的转义字符分为如下几种:平时一般用的是 1. &160#;不断行的空白(1个字符宽度)2. &8194#;半个空白(1个字符宽度)3. &8195#;一个空 ...
- C++ 多态、虚函数机制以及虚函数表
1.非virtual函数,调用规则取决于对象的显式类型.例如 A* a = new B(); a->display(); 调用的就是A类中定义的display().和对象本体是B无关系. 2. ...
- jquery 中 $.map 的使用方法
$.map(data,function(item,index){return XXX}) 遍历data数组中的每个元素,并按照return中的计算方式 形成一个新的元素,放入返回的数组中 ,,], f ...
- js 判断IE浏览器,包含IE6/7/8/9
//判断IE6-9的版本,num可取值为6/7/8/9//若不给参数num,仅判断浏览器是否为IE,不判断版本 var isIE = function (num) { if(arguments.len ...
- 编译MVC解决方案老出现这个问题的原因
Server Error in '/' Application. The view at '~/Views/Home/Index.cshtml' must derive from WebViewPag ...