Redmine性能测试

Redmine部署使用有一个月了,反馈有时很慢。

1、查看log发现,事务更新后要发送Email,如果连接邮件服务器有问题,会等待超时,导致很慢。

2、解决发送邮件问题后,仍然有时慢,ActiveRecord显示要几百秒。

 

测试:

1、采用http_load进行测试(只能测试GET,不支持POST。找了windows平台上运行的版本):

D:\App\Coder\http_load>http_load -parallel 8 -s 3000 urls.txt
: byte count wrong080/projects/oad/issues?page=5&query_id=12
: byte count wrong080/projects/oad/issues?page=2&query_id=12
: byte count wrong080/projects/oad/issues?page=2&query_id=33
: byte count wrong080/projects/oad/issues?page=7&query_id=14
: byte count wrong080/projects/oad/issues?page=5&query_id=12
5097 fetches, 8 max parallel, 1.8367e+08 bytes, in 3000.01 seconds
36034.9 mean bytes/connection
1.69899 fetches/sec, 61223.1 bytes/sec
msecs/connect: 0.593747 mean, 31.212 max, 0 min
msecs/first-response: 3452.88 mean, 48662.2 max, 25.022 min
5 bad byte counts
HTTP response codes:
code 200 -- 4763
code 302 -- 329
code 502 -- 5

最多48秒才返回,确实有点慢,但可以接受。

 

2、apache自带的ab应该也很轻量级的,可以测试POST,但是好像不能对多个POST列表同时测试。 下次试试JMeter。

3、性能优化的影响因素较多,可参考此文。如配置优化mysql,在my.ini里增加:

innodb_buffer_pool_size = 1073741824
# Threads_cached = ON # -> ON
thread_cache_size = 16 # (start at 4)
query_cache_size = 8000000 # (>= 8M)
join_buffer_size = 128000 # (> 128.0K)
tmp_table_size = 16000000 # (> 16M)
max_heap_table_size = 16000000 # (> 16M)
table_open_cache = 800 #(> 800)
#innodb_buffer_pool_size (>= 371M)
thread_concurrency = 8 #(cpu*2)

注意,我的mysql上述变量使用中划线“-”而不是下划线“_”。

参考此文和此文解决mysql性能问题的过程,我在my.ini里增加了以下配置:

innodb_buffer_pool_size = 1073741824 

tmp-table-size = 200M
join-buffer-size = 1M
query-cache-size = 16M
innodb-buffer-pool-instances = 2 # The MySQL Documentation suggests 1G per buffer pool instance, innodb_buffer_pool_size should be 2G
slow-query-log = TRUE

4、查看mysql设置:

打开命令行(bitnami redmine运行use_redmine.bat),输入: mysqld --help --verbose >dbsettings.txt  可在输出的文件的最后行查看。

如需使用mysql命令查看,则打开mysql命令行(bitnami redmine运行use_redmine.bat,然后输入:mysql -uroot -p***)进入,可运行show processlist;等指令。

转载于:https://www.cnblogs.com/lustforlife/p/5717769.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/418231.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

包装类转换基本数据类型与基本数据类型转换为包装类

包装类转换基本数据类型 基本数据类型转换为包装类 新特性: 自动装箱(基本数据类型转换为包装类): 自动拆箱(包装类转换基本数据类型): 基本数据类型、包装类向String 的转换 方式1&#xff1…

前端学习(2038)vue之电商管理系统电商系统之优化nprogress加载进度条

main.js import Vue from vue import App from ./App.vue import router from ./router import ./plugins/element.js //导入字体图标 import ./assets/fonts/iconfont.css Vue.config.productionTip false //导入全局样式 import ./assets/css/global.css import TreeTable …

Qt之Concurrent框架

简述 QtConcurrent 命名空间提供了高级 API,使得可以在不使用低级线程原语(例如:互斥、读写锁、等待条件或信号量)的情况下编写多线程程序,使用 QtConcurrent 编写的程序根据可用的处理器核心数自动调整所使用的线程数…

Eclipse中单元测试

再开发时候只需要Test即可

01-subgradients_notes

Subgradients 次梯度 S. Boyd and L. Vandenberghe Notes for EE364b, Stanford University, Winter 2006-07 April 13, 2008 1 定义 我们称一个矢量g∈Rn是函数f:Rn→R在x∈domf处的次梯度,如果对于所有的z∈domf满足: f(z)≥f(x)gT(z−x)(1)如果f是…

解决Unity3D导出apk失败:Failed to re-package resources

前几天把系统重装了一下,重新安装Unity3D和Android Studio之后发现过去的文件都不能导出了。 错误信息主要包括: CommandInvokationFailure: Failed to re-package resources. See the Console for details.E:\Android\sdk\build-tools\24.0.0\aapt.exe …

代码块的总结

class Mid extends Root{ static { System.out.println("Mid的静态初始化块"); } { System.out.println("Mid的普通初始化块"); } public Mid() { super(); System.out.println("Mid的无参构造器…

改进MySQL Order By Rand()的低效率

Author:flymorn Source:飘易Categories:PHP编程 PostTime:2011-1-14 15:35:07正 文:最近由于需要研究了一下MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写…

匿名子类对象

匿名对象的意义:一般只使用一次,图方便,不需要重新写一个类。 匿名类通常都是的形式结构通常都是: abstract class A ... 创建匿名类: A a1 new A(){ 重写所有抽象类的方法 } package AbstractTest2; public cla…

内部类访问局部变量的时候,为什么变量必须加上final修饰

这里的局部变量就是在类方法中的变量,能访问方法中变量的类当然也是局部内部类了。我们都知道,局部变量在所处的函数执行完之后就释放了,但是内部类对象如果还有引用指向的话它是还存在的。例如下面的代码: class Outer{ …

创建接口匿名实现类的对象的四种方法

package InterfactTest; public class InterfaceTest { public static void main(String[] args) { // TODO Auto-generated method stub Computer com new Computer(); com.transferData(new Print()); //创建了非匿名实现类的匿名对象 …

Thinkphp 数据库配置参数

mysql配置 DB_USER > array(DB_TYPE > mysql,DB_HOST > 127.0.0.1,DB_NAME > blog,DB_USER > root,DB_PWD > ,DB_PORT > 3306,DB_PREFIX > ,DB_CHARSET> utf8, // 字符集), Oracle配置(模式) DB_DATA > array(DB_TYPE >…