Questions tagged «optimization»

优化是修改系统以使其某些方面更有效地工作或使用更少的资源的过程。

8
为什么rsync比NFS快?
几天前,我注意到了一件相当奇怪的事情(至少对我而言)。我运行rsync复制相同的数据,然后将其删除到名为的NFS挂载中/nfs_mount/TEST。这/nfs_mount/TEST是从托管/导出的nfs_server-eth1。两个网络接口上的MTU均为9000,两者之间的交换机也支持巨型帧。如果可以,rsync -av dir /nfs_mount/TEST/我得到的网络传输速度为X MBps。如果可以,rsync -av dir nfs_server-eth1:/nfs_mount/TEST/我的网络传输速度至少为2X MBps。我的NFS挂载选项是nfs rw,nodev,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountvers=3,mountproto=tcp。 底线:两种传输都通过相同的网络子网,相同的线路,相同的接口,读取相同的数据,写入相同的目录等。唯一的区别是通过NFSv3,另一种通过rsync。 客户端是Ubuntu 10.04,服务器是Ubuntu 9.10。 rsync怎么这么快?如何使NFS与该速度匹配? 谢谢 编辑:请注意,我使用rsync写入NFS共享或SSH到NFS服务器并在那里本地写入。我都做过两次rsync -av,从清除目标目录开始。明天我将尝试使用普通副本。 Edit2(其他信息):文件大小范围为1KB-15MB。文件已经被压缩,我尝试进一步压缩它们,但没有成功。我tar.gz从那做文件dir。这是模式: rsync -av dir /nfs_mount/TEST/ =最慢的传输; rsync -av dir nfs_server-eth1:/nfs_mount/TEST/=启用巨型帧时最快的rsync;没有巨型帧会慢一些,但仍然比直接到NFS的要快得多; rsync -av dir.tar.gz nfs_server-eth1:/nfs_mount/TEST/ =与其非tar.gz等效项相同; 用cp和测试scp: cp -r dir /nfs_mount/TEST/=比快一点,rsync -av dir /nfs_mount/TEST/但仍然慢得多rsync -av dir nfs_server-eth1:/nfs_mount/TEST/。 scp -r dir /nfs_mount/TEST/=整体最快,略有克服rsync -av dir …

3
ServerLimit,MaxClients,MaxRequestsPerChild指令的最佳值
我正在一个交通繁忙的网站上投放大量动态内容,大部分是用户生成的。 该服务器是专用服务器,总共有4个Intel®Xeon®CPU X3210 @ 2.13GHz处理器。考虑到服务器具有4GB的RAM并且MySQL数据库在单独的服务器上运行,我需要知道ServerLimit和MaxClients apache指令的最佳值。面板是带有CentOS的DirectAdmin。 以下是我当前的指令,但是在用户超过5k的高峰时段,注意到了一个重要的滞后-这并不是MySQL的全部错,因为页面似乎生成速度很快(我实现了页面生成时间计数器),但是时间长连接延迟,直到页面开始响应并发送到浏览器为止。 <IfModule prefork.c> StartServers 800 MinSpareServers 20 MaxSpareServers 60 ServerLimit 900 MaxClients 900 MaxRequestsPerChild 2000 </IfModule> Timeout 90 KeepAlive On KeepAliveTimeout 5 我应该提到的是,使用top命令监视服务器时,高峰时段的CPU使用率绝不会超过20%〜30%。那时MySQL服务器的使用率也达到30%到50%,我一直在努力解决缓慢的查询问题,但这是另一个问题。我知道这不是数据库瓶颈,因为在高峰时段加载静态页面也需要很长时间。 感谢您提供任何优化这些值的技巧。

5
MySQL的哪些配置选项可以最大程度地提高速度?
MySQL的哪些配置选项可以最大程度地提高速度? 我想知道实际配置文件的改进,表类型,硬件设置,复制等。除了查询结构和表结构(在网站和Stack Overflow上都很容易找到)以外的任何内容。诸如查询缓存设置之类的东西使您获得最快的速度吗?硬盘怎么样?在外部RAID或内部RAID上更好?复制是否给您带来更好的性能,尤其是在读取大型查询时? 您还进行了哪些其他设置/更改来提高MySQL的性能? 注意:我意识到这些都是非常依赖使用的(即小型网站与数据仓库),但是由于我认为我们大多数人可能在各种站点/系统上工作,因此很高兴知道可以应用于不同站点的各种技术情况。另外,我认为某些技术可以在情况之间转移。

3
最大化rsync性能和吞吐量-直接连接的千兆服务器
我有两台运行CentOS 6.5的Dell R515服务器,每台中的一个Broadcom NIC直接连接到另一个。我每晚使用rsync over ssh使用直接链接将备份从一对中的主服务器推送到辅助服务器。监控流量,我发现吞吐量约为2MBps,这比我从千兆端口获得的预期要低得多。我已经将双方的MTU设置为9000,但这似乎并没有改变。 是否有建议的设置和优化设置,这些设置和优化可以使我达到最大可用吞吐量?此外,由于我在ssh上使用rsync(或可能只是NFS)来复制数百万个文件(〜6Tb的小文件-巨大的Zimbra邮件存储区),因此我正在寻找的优化可能需要针对我的特定用例进行更具体的说明。 我在两侧都使用ext4,如果这很重要 谢谢 编辑:我使用了以下rsync选项,结果非常相似: rsync -rtvu --delete source_folder/ destination_folder/ rsync -avHK --delete --backup --backup-dir=$BACKUPDIR source_folder/ destination_folder/ 当前,在同cp一个直接电缆链接上使用NFS导出时,我看到的是同样水平的性能下降。 EDIT2:完成同步后,我可以运行iperf并发现性能约为990Mbits / sec,其缓慢是由于使用了实际的数据集。

7
可以有效地与远程服务器同步100万个文件的选项?
在我为之工作的一家公司中,我们有一个称为“播放列表”的东西,它们是每个〜100-300字节的小文件。大约有一百万。每小时大约有100,000个被更改。这些播放列表需要每小时上传到不同大洲的其他10个远程服务器,并且理想情况下,播放列表必须在2分钟内快速完成。在主副本上删除的文件也必须在所有副本上删除,这一点非常重要。目前,我们将Linux用于基础架构。 我正在考虑尝试使用带有-W选项的rsync复制整个文件而不比较内容。我还没有尝试过,但是也许有更多rsync经验的人可以告诉我这是否可行? 还有哪些其他选项值得考虑? 更新:我选择了lsyncd选项作为答案,但这仅仅是因为它是最受欢迎的选项。其他建议的替代方案也以其自己的方式有效。

2
仅提供静态内容的网站的IIS 7.5优化
我正在寻找一个无Cookie的域,该域旨在为Web应用程序提供静态内容,类似于堆栈交换站点使用的http://sstatic.net/站点。 我的问题是,对于这样的域,我可以对IIS 7.5设置进行哪些优化?例如,它只负责提供静态内容,而不负责任何其他事情,因此禁用ASP.NET集成是否对该网站来说是个好办法? 欢迎使用IIS 7.5建立此类站点的任何建议或参考。 编辑 为了明确起见,这不是服务器上的唯一站点,因此建议的优化应该针对站点级别,而不是服务器级别的配置。

3
如何确定dd命令的最佳字节大小
我知道做dd if = / dev / hda of / dev / hdb会做深层硬盘复制。我听说人们已经可以通过使用“ bs”选项增加一次读取和写入的字节数(512)来加快处理速度。 我的问题是: 是什么决定从硬盘驱动器复制的理想字节大小? 和 为什么这决定了理想的字节大小?

7
目录中有多少个文件?(从网络下载数据)
问候, 我正在编写一些脚本来处理来自各种照片网站的图像。现在,我将所有这些数据存储在同一目录中的单个文本文件中。 该目录可通过Web访问。最终用户调用Web服务,该服务将返回用户所需文件的路径。 我想知道在所有阶段将所有这些文件放在同一目录中会对性能产生影响吗?(如果有)

3
建立一个10亿行的MySQL表
根据注释中的建议,此问题已从Stack Overflow重新发布,对重复表示歉意。 问题 问题1:随着数据库表的大小变大,如何调整MySQL以提高LOAD DATA INFILE调用的速度? 问题2:使用计算机群集加载不同的csv文件,提高性能还是将其杀死?(这是我明天使用负载数据和批量插入的基准测试任务) 目标 我们正在尝试使用特征检测器和聚类参数的不同组合来进行图像搜索,因此,我们需要能够及时构建大型数据库。 机器信息 该计算机具有256 gig的ram,是否还有另外2台具有相同ram数量的计算机(如果可以通过分配数据库来缩短创建时间)? 表架构 表架构看起来像 +---------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------+------------------+------+-----+---------+----------------+ | match_index | int(10) unsigned | NO | PRI | NULL | | | cluster_index | int(10) unsigned | NO | …

6
优化在VPS上运行的apache / php / mysql以减轻负载
有关在具有512m RAM的VPS上优化apache / mysql服务器的问题。在正常负载下,所有组件运行速度很快,没有连接滞后。但是,当我们遇到交通繁忙的日子(访问量超过5万)时,网站就会爬行,并且需要30秒以上的时间才能从apache取回内容。 该站点在Expression Engine(CMS)(PHP)上运行,我遵循了它们的繁重优化指南。我已经在Google上搜索并跟踪了很多运气,使其运到现在,但是我需要获得恒定的响应时间。 我认为这与此处的“优化低内存”问题有所不同,因为我有足够的RAM(用于我要执行的操作),我只需要使服务器在高负载下不会阻塞即可。 有什么建议吗?

5
如何最小化SpamAssassin(spamd)内存使用
我在Debian上使用SpamAssassin(默认配置中禁用了Pyzor,AWL和Bayes,并启用了sa-compile),并且每个spamd子进程在32位上占用了大约100到150MB的内存(大约50MB的实际内存)位服务器,大约是64位服务器上的两倍(在逻辑上足够)。通常有两个子进程,但是在繁忙时间可以运行五个(最大)。 在200至600MB的ISTM中,此任务需要大量内存。我想继续将SA用作我的过滤结构的一部分,但是要证明如此大的内存正变得越来越困难。 有什么方法可以减少每个子进程使用的内存量?(或者,使单个子进程如此之快,以至于我可以将最大子进程设置为2?)。我愿意考虑任何选择,包括那些可能会或可能导致准确性降低的选择。 我已经阅读了SA Wiki上的“内存不足问题”页面;没有任何用处。SA不会扫描大于5 MB的邮件。

6
在线第一天:如何不杀死您的网站
假设您有一个新网站,上面有很多数据(例如大图像),并且您打算将其放到网上。如果您“过多”地进行宣传,则在最初的几天中,该网站将不知所措。 如何减轻这种风险? 我想到了 像SO和SF一样逐步上线:“私有”测试版,公开测试版,公开 允许X 连接数 会话同时进行,因此连接的用户仍然对网站有良好的体验,其他用户则道歉 我不能: 购买更多服务器,因为第一天之后,该网站的访问量就会大大减少:)



2
Linux慢速启动:更改IP路由对初始窗口没有任何影响
我将机器中的tcp初始窗口更改为10,如下所示 [user@site etc]$ sudo ip route change default via 17.255.209.1 dev eth0 proto static initcwnd 10 并tcp_slow_start_after_idle如下图所示更改 [user@site etc]$ sudo sysctl -a | grep tcp_slow_start_after_idle net.ipv4.tcp_slow_start_after_idle = 0 IP路由显示确认如下 [user@site etc]$ ip route show default via 17.255.209.1 dev eth0 proto static initcwnd 10 169.254.0.0/16 dev eth0 scope link metric 1002 …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.