各类软件对虚机&物理机的资源配置需求建议
文章目录
1、Web前端(Nginx、LVS、F5、HAproxy等)
(1) 内存中
(2) CPU中
(3) 硬盘中低 (主要是日志)
(4)Nginx性能评测:测试工具:ab(apacheBench)、静态文件3Kbytes
硬件环境:Intel xeon cpu E5-2682 v4 2.50GHz 4 core 8GBytes
26000次响应/秒(平均值)
吞吐量111Mbytes/秒(平均值)
并发数300
每次请求响应时间:10.8ms(平均值)
性能:处理性能优、CPU占用平均50%
2、应用服务器(Tomcat、Java、Python、Ruby等)
(1) RAID必不可少
(2) 尤其处理流媒体视频、作为游戏服务器、逻辑、地图、聊天(CPU和内存需求比较高)
(3) 内存中高
(4) CPU中高
(5) 硬盘中高(日志+程序+备份)
(6) tomcat评测:测试工具:ab(apacheBench)
环境:Centos7、32G内存、1颗6核的CPU Intel(R) Xeon(R) CPU E5-2603 v3 @ 1.60GHz
测试方法:ab -kc 100 -n 1000000 http://localhost:9099(静态页面:并发100个用户连续发送100万请求)
测试过程中的CPU最高使用率:Tomcat8为44%、Tomcat6为30%
表格对比得出Tomcat8在当前配置情况下,并发用户数为1500,吞吐率和请求处理时间 最佳
而Tomcat6 则是在并发用户数为100时吞吐率和请求处理时间 最佳
3、公共服务(邮件服务器、文件服务器、DNS服务器、域控服务器)
(1) 两台互为主备
(2) 邮件根据用户量计算所需硬盘大小
(3) 内存中
(4) CPU中
(5) 硬盘中高
4、数据库(Mysql、Mariadb、SQLserver、Oracle、DB2)
(1) 高CPU
(2) 高内存
(3) 高硬盘
(4) 可扩容性
(5) 主从+数据备份
(6) RAID
5、MQ消息服务(RabbitMQ、activeMQ、ZeroMQ、Kafka等)
(1)内存高
(2)CPU高
(3)硬盘低
(4)具体要根据消息量和并发峰值
(5)Mysql评测报告:工具:Mysqlslap、Mysql5.1 (存储引擎Myisam)
环境:linux6.1、服务器3台、16G内存、230G硬盘
数据插入测试:mysqlslap--concurrency=200 --iterations=1 --query="callmyisamtest.p_test_t1_disk;" --number-of-queries=10000 -uroot -p1234 -h192.168.23.168 --create-schema=myisamtest
结果:开200个并发线程同时插入数据
1亿条记录:每线程执行50次存储过程(200*50*10000记录)用时10212.541seconds(约2小时50分)
2亿条记录:每线程执行100次存储过程(200*100*10000记录)用时20125.405seconds(约5小时35分)
数据查询单线程测试:
6、监控(Zabbix、Cacti、Prometheus、Nagios)
(1)高CPU
(2)内存中
(3)硬盘中(历史记录)
7、自动化(ansible、saltstack等)
(1)CPU中
(2)内存(30并发平均2G左右、管理100台服务器要8G+)
(3)硬盘中