服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

tcpdump增加udp性能

我正在运行一组负载testing来确定以下设置的性能: Node.js test suite (client) –> StatsD (server) –> Graphite (server) 简而言之,node.jstesting套件每隔x秒向一个位于另一个服务器上的StatsD实例发送一组量度的指标。 然后,StatsD每秒钟将指标刷新到位于同一台服务器上的Graphite实例。 然后我看看testing套件实际发送了多less指标,以及Graphite收到了多less指标,以确定testing套件与Graphite之间的数据包丢失情况。 但是我注意到,我有时会得到非常大的数据包丢失率(请注意,它是使用UDP协议发送的),从20%到50%不等。 那么当我开始研究这些数据包被丢弃的位置时,就会发现StatsD可能会带来一些性能问题。 于是我开始在系统的每个部分logging指标来追踪这个下降发生的地方。 这是事情变得怪异的地方。 我正在使用tcpdump来创build一个捕获文件,我testing完成后运行。 但是每当我运行tcpdump运行testing,数据包丢失几乎是不存在的! 它看起来像tcpdump以某种方式增加我的testing的性能,我不明白为什么以及如何做到这一点。 我正在运行以下命令在服务器和客户端上loggingtcpdump消息: tcpdump -i any -n port 8125 -w test.cap 在一个特定的testing案例中,我发送了40000个指标/秒。 运行tcpdump时的testing数据包丢失率约为4%,而没有数据包丢失率约为20% 两个系统都以Xen VM的forms运行,具有以下设置: Intel Xeon E5-2630 v2 @ 2.60GHz 2GB内存 Ubuntu 14.04 x86_64 我已经检查过的潜在原因: 增加UDP缓冲区的接收/发送大小。 影响testing的CPU负载。 (最大负载40-50%,客户端和服务器端) 在特定的接口上运行tcpdump而不是“任何”。 使用'-p'运行tcpdump来禁用混杂模式。 仅在服务器上运行tcpdump。 这导致20%的数据包丢失,似乎不影响testing。 仅在客户机上运行tcpdump。 这导致了性能的提高。 将netdev_max_backlog和netdev_budget增加到2 […]

Apache,suexec,PHP,suPHP

虽然我作为一个Linux 用户很舒服,但是我的Linux Admin-fu有点弱。 因此,我在这里寻找我即将build立的CentOS服务器的指导。 我需要为我们的几个客户设置一个Apache2 Web服务器。 我希望每个客户端的Web内容都位于其主目录(apache.conf中的USERDIR ,对吗?),以供静态HTML网站使用。 我希望Apache作为客户端运行( suexec ?)。 他们的一些东西将是PHP应用程序,我觉得我也想看看suphp 。 所以基本上我想看起来像一个共享的networking托pipe公司的小版本。 考虑到这些是我常见的 ,我想我很容易find一个很好的当前如何指导设置这一切,但到目前为止,我已经很less运气。 我怀疑我的search词是closures的。 所以问题(随意回答任何或全部): 任何人都有一些固定的链接到当前/现代指南,这将帮助我设置这一切? 不,apache文档网站不是指南;-) 由于我有静态网站和PHP应用程序的混合我想/需要安装suexec和suphp? 如果是这样,是否会引入我应该注意的任何挑战? 我应该看看其他选项,而不是suexec和suphp? 我打算给最终用户SSH,SFTP或SCP访问他们的东西(如果这影响了任何东西)。 在此先感谢您的帮助。 [编辑]我应该早些提到这一点:我的追求模仿与文件权限和所有权相关的共享主机提供商的一个关键目标。 我真的希望避免教导用户需要改变这些事情,以便看到他们的增加/改变。