Articles of 性能调优

交换服务器2010上的虚拟内存优化

嗨,我做了一些谷歌search,但空白 我知道我的电脑/电脑>属性>高级系统设置>高级选项卡>设置[性能]>高级[选项卡]>更改>清除 初始大小=主机大小[ex – 12GB] 最大尺寸= 12GBx3 [36GB] + 300MB 它会以任何方式帮助交换服务器吗? 至于表演和占用98%的物理知识

nginx不能执行很多请求

我有一个关于nginx tune的问题。 我有一个应用程序,我想每秒执行200次。 我创build了bash文件,并使用wget和bqO开关执行。 但它有一个问题。 当请求的数量大于100. nginx不响应另一个请求,并在加载完成之前一直存在。 但是,我设置pm.max_children并将worker_connections设置为200。 你有任何build议来解决这个问题,还是有任何调谐器,如“MySQL调谐器”调谐nginx。 我的configuration:php-fpm55.conf: pm = ondemand pm.max_children = 1024 pm.start_servers = 20 pm.min_spare_servers = 20 pm.max_spare_servers = 35 pm.max_requests = 256 pm.process_idle_timeout = 20 net.core.somaxconn = 4096 sysctl.conf的: net.ipv4.tcp_window_scaling = 1 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 net.ipv4.ip_local_port_range […]

Apache 2.4的当前每秒请求数

我知道如何使用像apache bench和httperf这样的工具来testing每秒请求的最大数量。 但有没有办法看到一个活的服务器正在处理每秒的平均请求数? 我希望有一些比parsing访问日志时间更简单的东西。

如何通过抛出内存来提高MySQL性能?

我有一个1 GB的内存的机器,并已设置Apache使用STARTSERVER OF 150,MAXCLIENTS 150,只有一半使用,所以我仍然有大约500 MB的备用RAM。 我希望MySQL使用它作为现在运行ABtesting显示,与静态图像我得到6000req /秒和我的CMS我只有180req /秒这是一个PHP脚本与MySQL后端。 我需要增加MySQL性能而不用触及SQL语句,只需要一个networkingpipe理员而不是程序员。 MySQL有这个选项吗? 500MB的备用RAM,我想用起来。

托pipeMySQL数据库的服务器configuration

我有一个Web应用程序,它使用托pipe在虚拟服务器上的MySQL数据库。 当我启动应用程序和数据库非常小时,我一直在使用这个服务器。 现在它已经增长,服务器无法处理数据库,导致频繁的数据库错误。 我打算得到一个服务器,我需要的build议。 就像我说的那样,db现在是9GB,并且正在快速增长。 有数百万行的表,这些表经常更新和查询。 数据库显示最常见的错误是Lock wait timeout exceeded 。 以前曾经有过“锁的总数超过锁表大小”的错误,但我可以通过增加Innodb缓冲池大小来避免它。 请build议在我应该购买的服务器中查找哪些configuration。 我读的地方,数据库理想应该有一个缓冲池大小大于其数据的大小,所以在我的情况下,我想我需要内存GT 9 GB。 我应该在服务器上寻找哪些其他的东西? 告诉我,如果我应该给你更多的信息

如何把Linux保持高速caching?

我们正在Debian上运行一个沉重的服务。 我们的服务生成大量的文件I / O,其性能取决于Linux内核caching文件的性能。 我们的系统有64GB内存。 总文件大小为500GB(大量小文件)。 这些文件在raid上通过reiserfs提供。 内核现在是3.2.9。 (这不是一个新问题,我们有这个问题好几年了。) 通常,大部分文件内容都被caching,系统运行平稳。 免费(1)命令显示14G内存caching,10G内存caching和8G内存是免费的。 然而,在我们的繁忙时间,我发现linux内核释放了大部分caching/缓冲区,并保持它们处于空闲状态。 在我看来,保持记忆处于自由状态是一个巨大的浪费,我想这是我们的服务在繁忙时间超载的原因。 免费(1)命令显示像2Gcaching,2G缓冲区和28G免费。 我的问题是,在什么情况下Linux内核想释放内存而不是caching/缓冲。 而如何避免这种行为? 有没有我们可以调整的configuration? (让我知道如果你需要更多关于我们的硬件/系统/服务的信息)

在慢速文件系统中提高速度的交易可靠性

在我运行Ubuntu Server 11.10的机器上,我有一个相当缓慢的四个U盘上的软RAID6arrays(没有其他的持久性存储方式)。 我想要一个更快的文件系统。 如果我在紧急情况下丢失了一些数据,我也可以,但是我宁愿让系统和文件在数据丢失的情况下保持一致的状态。 我可以设置一个RAM驱动器,但是还有更强大的解决scheme吗? (也许,也许,configuration我的ext4使用更多的RAM和同步较less…如果这是一个好主意。) 更新:就这个问题而言,请假设4xUSB棒,RAID6和ext4是常量。 我可以调整RAID6和ext4的设置,我可以设置一些东西(或侧面的RAM驱动器),但没有更低层次的变化。

试图扩大我的专用服务器的高stream量

我现在有一个四核心的Xeon,8GB内存,只有2个1TB的SATA驱动器。 我想弄清楚如何扩展我的应用程序来尽可能地处理尽可能多的负载和stream量。 我有一个行业网站,目前每天约有30,000的注册,每天6万的UV,以及600-1,000,000次的综合浏览量。 速度太慢了,我不得不closures服务器,现在我正在亏钱和stream量。 我相当确定的一部分是PHP代码和MySQL查询(从印度雇用他们)。 我可以做些什么来优化和确保服务器处理尽可能多的stream量,而不会造成瓶颈。 因为我期望每天都有更多的注册。 这是一个非常密集的数据库站点,因为它是某个特定领域的“networking”站点,您必须login,因此所有事情都围绕MySQL进行。 PS。 CentOS 5 64bit,PHP5,MySQL5。 我知道数据库是MyISAM,我很确定他们没有太好的索引表。 感谢您的build议!

AIXnetworking参数closures已拔出设备的TCP套接字

我们有一个AIX机箱,运行我们所称的银行“ATM交换机”,而不是ATMnetworking交换机,而是银行ATM驱动程序。 我们有一些ATM机连接到两个服务器进程。 问题是,当我们断开任何这些机器时, netstat -na| grep <port number> netstat -na| grep <port number>命令显示为此断开连接的设备build立的套接字仍然build立,我们必须从软件手动发送一个命令使套接字意识到它不再有效。 有一个tcp级别的参数,使这个连接在一两分钟内意识到这个设备没有连接了吗? 我们有以root权限设置的以下参数: no -o tcp_keepidle=1000 no -o tcp_keepcnt=2 no -o tcp_keepintvl=150 no -o tcp_finwait2=100 它最初有默认值。 但即使在我们改变这些参数并重新启动服务器进程之后,问题依然存在。

为什么MySQL table_cache已满,但从未使用过

我一直在使用tuning-primer.sh脚本来调整我的my.cnf设置。 我的大部分工作都运行良好,但关于TABLE CACHE的部分没有意义: TABLE CACHE当前table_cache值= 900个表。 你总共有0个表你有900个开放表。 当前table_cache命中率为1%,而表caching的100%正在使用中。 你应该增加你的table_cache 当我做SHOW STATUS时 我得到以下表格相关的数字: Open_tables = 900 Opened_tables = 0 好像有什么问题。 我有一些额外的内存可以用来增加table_cache的大小,但是我的感觉是已经可用的900个表没有做任何事情,增加它只会浪费更多的能量。 为什么会发生这种情况? 是否有其他设置,可能会导致所有我的table_cache插槽使用即使没有命中给他们? 我有150个最大连接,每个连接可能不超过4个表,FWIW。 这里是我也一直在调整的临时表的debugging器脚本输出: 温度表 当前max_heap_table_size = 90 M 当前tmp_table_size = 90 M 在11032358个临时表中,有40%是在磁盘上创build的 也许你应该增加你的tmp_table_size和/或max_heap_table_size来减less基于磁盘的临时表的数量。 注意! 内存表中不允许使用BLOB和TEXT列。 如果使用这些列提高这些值可能不会影响磁盘临时表的比例。