ServiceDesk Plus忧化

来源:互联网 发布:云阳县人民法院淘宝网 编辑:程序博客网 时间:2024/06/11 10:48

ServiceDesk Plus6.0优化测试。

测试用ServiceDesk Plus6.0进行值班事务处理半年多时间了。整个数据库达3G。负荷基本是每天150+事务量,垃圾邮件等直接关滤掉,不计。

ServiceDesk Plus简称SDP

SDP目前已有7.0版本。因授权问题。未能使用。只有使用6.0版。

SDP基于java可跨平台。我用的是linux+mysql。

使用非常简单。安装。另外是用点时间在于配置上。主要是帐号创建,培训邮件过滤及相关的报表生成数据。

今天的优化内容是:
  硬件配置:2核双智强2.4GCPU+2G内存+36G硬盘。
  
变更的内容有:
参考其官方论坛中说明的删除两个表的数据。资料来源:http://forums.adventnet.com/viewtopic.php?t=280391
内容:

cd /opt/ns/ServiceDesk/mysql/bin/
./mysql -u root -h localhost -P 33366 -p --socket=/opt/ns/ServiceDesk/mysql/tmp/mysql.sock

mysql> delete from AaaAccSession;
mysql> delete from AuditRecord;


我查看了我的aaaaccsession表共50万+条记录auditrecord也是50万+记录。

删除后,发现,状况并未有大改观。打开事务列表还是慢。发现数据库占用资源情况较严重。
决定再次优化数据库。

查其官方BLOG,对于硬件较优的情况下。如内存>2G的机器,可使用更多内存进行启动。
资料来源:http://blogs.manageengine.com/servicedesk/2007/04/03/servicedesk-plus-database-performance-tuning/

操作如下:
  在startDB.sh中的mysql启动参数中加入以下两条。
--key_buffer_size=100000000

--innodb_buffer_pool_size=350000000

再次测试,仍无大改善。

最后一招,将数据库与web程序分离。
再次调用一台服务器 cpu 2.4*2 内存2G 的机器,让其做数据库服务器。
对此服务器安装SDP。
再将原数据库mysql中的数据拷贝,直接覆盖新装的SDP系统。



使用:
cd /opt/ns/ServiceDesk/mysql/bin/
./mysql -u root -h localhost -P 33366 -p --socket=/opt/ns/ServiceDesk/mysql/tmp/mysql.sock
登陆数据库服务器“/opt/ns”为我的安装路径。
为SDP创建一个帐号。专用于连接之用。

grant all on servicedesk.* to servicedesk@"%" identified by 'password'; 创建一个用户servicedesk让其在任何地方都可以对数据库servicedesk用password的密码进行访问。

变更WEB中的数据库连接。
使用./changeDBServer.sh --console 变更数据库服务器IP 端口号,用户名,密码。

因程序run.sh启动过程中会检测及启动数据库。是以,若是以这种web及数据库分离的方式,即使改了数据库连接语句,还是无法正常启动的。会提供33366端口被占用,无法正常启动。

修改配置档:

vi /root/AdventNet/ME/ServiceDesk/server/default/conf/nms-service.xml 中找到

<mbean code="com.adventnet.persistence.service.PersistenceService" name="user:service=PersistenceService">
                 <attribute name="JndiName">persistence</attribute>
        <attribute name="StartDBServer">true</attribute>
         <attribute name="OperationHandler">
            <handler name="com.adventnet.persistence.DefaultOperationHandler">
                <max-rows-per-operation>1000</max-rows-per-operation>
                <max-rows-per-table>50</max-rows-per-table>


将上面的true改为false 即不对数据库进行检查。

再次重启run.sh 
OK~
原创粉丝点击