标签: optimization

IIS优化

使用 IIS(在 Windows 2003 上)时使用什么样的优化(性能或其他)?

目前,我每个网站使用 1 个应用程序池,但我认为我可以做更多:)

iis optimization performance

8
推荐指数
1
解决办法
1800
查看次数

使用 Linux TCP 修复窗口缩放问题

我正在尝试提高我在海外的一台服务器的吞吐量,在使用 wireshark 监控服务器和我的家用计算机之间的传输后,我很确定我的窗口大小有问题。

对于 ftp 传输,我的接收窗口大小为 14720。

Window size value: 115
Calculated window size: 14720
Window size scaling factor: 128
Run Code Online (Sandbox Code Playgroud)

我的发送窗口看起来像我设置的那样:

Window size value: 65335
Calculated window size: 261340
Window size scaling factor: 4
Run Code Online (Sandbox Code Playgroud)

那么如何修复 rwindow 呢?我已经在我的服务器上完成了 linux tcp 设置,一切似乎都很正常。时间戳打开,syncookies 关闭,缩放打开,sacks 打开,cubic 是拥塞控制方法,最大接收和发送窗口大小为 3mb。我试过更改默认的 tcp_wmem 和 tcp_rmem 值,但它什么也没做。

编辑:

当我关闭服务器上的自动调整和/或窗口缩放时,窗口缩小到 14600,这基本上是 MSS 的 10 倍。

5337    4.268584    2.2.2.2 1.1.1.1 FTP 106 Response: 227 Entering Passive Mode (2,2,2,2,240,15).
5338    4.268640    1.1.1.1 2.2.2.2 TCP 74  59855 > 61455 [SYN] Seq=0 Win=14600 Len=0 …
Run Code Online (Sandbox Code Playgroud)

linux optimization tcp

8
推荐指数
1
解决办法
2万
查看次数

服务器在什么时候被认为是空闲的?

从概念上讲,空闲服务器的定义是什么?

您会查看哪些资源指标来假设服务器是否空闲?

你会看:

  • CPU利用率
  • 磁盘使用情况
  • 内存使用情况

如果是这样,这些必须达到什么阈值才能确定某些东西是否空闲?

如果您纯粹查看这些统计数据,则重新启动和修补会扭曲您的结果。

linux windows optimization performance performance-monitoring

8
推荐指数
2
解决办法
3520
查看次数

在 LVM 中使用单个磁盘分区时的 IOPS 行为是什么?

我有一个 ubuntu 14.04.1 LTS 服务器,它具有带有逻辑卷的 LVM(由硬件 RAID5 支持)和一个名为“dbstore-lv”和“dbstore-vg”的卷组,它们具有从同一个 sdb 磁盘创建的 sdb1 sdb2 sdb3。该系统为42核和约128G内存。虽然我没有看到htop来自uptime~43+的负载平均输出中的CPU 峰值以及 vmstat 显示恒定的 iowait 为 20-40,其中context switches不断在 80,000-150000 左右,在高峰时段甚至更多,但 CPU 空闲时间也徘徊在附近70-85。下面是输出iostat -xp 1%util恒定为100%

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           8.91    0.00    1.31   10.98    0.00   78.80

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00   264.00    0.00   58.00     0.00  1428.00    49.24     0.02    0.28    0.00    0.28   0.21   1.20
sda1              0.00     0.00 …
Run Code Online (Sandbox Code Playgroud)

linux optimization performance performance-tuning iops

8
推荐指数
1
解决办法
343
查看次数

分析 Apache+Mysql+Php 服务器 - 哪个是瓶颈?

如何分析 Linux + Apache + Mysql + Php 服务器的速度?

我有一个在 Ubuntu 8.04 上运行的带有大量修改的 MediaWiki 实例的服务器。它有点迟钝 - 我还没有做任何优化它的事情,所以我相信有很多容易实现的成果可以让它更快。

但是为了优化,您需要先进行测量。我如何找出哪个组件(Apache、Php、Mysql)占用了最多的时间来为页面提供服务?

linux php optimization lamp

7
推荐指数
1
解决办法
1万
查看次数

配置 RAID 阵列时如何选择最佳条带大小

互联网上有各种“参考资料”,深入讨论了在为磁盘阵列选择特定 RAID 条带大小(4KB 到 128KB 或更大)时要考虑的因素,但没有一个是非常权威且一致的彼此真的。

例如:

John's Tech Bits
Stripe Width and Size
RAID 优化指南

特别是,与文件系统类型(FAT、NTFS 等)、文件系统簇大小、缓存策略、磁盘驱动程序命令调度策略、是否可以执行多个命令相关的几个因素似乎在起作用。排队(标记排队)到有问题的驱动器等。

我正在寻找的是权威的、数据驱动的和参考的论文,关于所有需要考虑的因素到底是什么,以及最终如何采取分析方法为给定的应用程序选择最佳条带大小,而无需经过蛮力练习尝试所有这些因素的组合,看看什么会产生最佳性能。

raid optimization performance hardware-raid

7
推荐指数
1
解决办法
3856
查看次数

如何确定分叉进程(Linux)使用的内存?

这个问题开始。Debian,如果这很重要。

我知道分叉进程之间共享了一些内存。那么我如何确定一个进程/一组分叉进程使用了​​多少内存?

使用在这个类似问题中推荐的 smem 工具,我得到如下值:

Command                         Swap      USS      PSS      RSS 
/usr/sbin/spamd --create-pr        0    16820    24974    41628
spamd chil                         0    19388    27581    44176
spamd chil                         0    32328    40038    55708
Run Code Online (Sandbox Code Playgroud)

我理解交换列,RSS 列是通常报告的(例如在 ps 中)。从阅读 smem 文档来看,USS 是专门为那个孩子准备的内存,而 PSS 是进程间共享的一部分内存。但是,将 USS 添加到 PSS 会产生比 RSS 更高的值,而且我认为共享的意义会更小(所以我可能解释不正确)。

我不依赖于 smem 工具。我只想以某种方式获得“内存使用”数字,该数字在一定程度上准确反映了进程正在使用的实际内存量。

linux optimization memory

6
推荐指数
1
解决办法
3549
查看次数

您是删除不需要的软件包 (*NIX),还是禁用它们?

我目前正在构建一个鞋匠和木偶设置。我做的一件事是用 puppet 禁用不需要的服务,但后来我想:我应该用 cobbler 删除它们,而不是在它们安装后禁用它们?

例如,我在 puppet 中的基类通知客户端禁用 smartd、cpuspeed、microcode_ctl 和 readahead_early,如果它是虚拟机。

那为什么不删除呢?如果我在稍后阶段确实需要其中一些软件包,我可以直接安装。当然,如果机器转换为物理硬件,我将不得不记住再次安装这些包。

认为我的问题的最佳解决方案是创建一个傀儡类,如果它是虚拟的,则禁用服务 A,如果不是,则启用它。但是,也许其他人有其他见解?

virtualization optimization puppet packages cobbler

6
推荐指数
2
解决办法
522
查看次数

当 mysql 数据库存储在 SSD 上时,运行“优化表”是否有意义?

手册说,关于“优化表”:

“删除的行保存在链表中,随后的 INSERT 操作会重用旧的行位置。您可以使用 OPTIMIZE TABLE 回收未使用的空间并对数据文件进行碎片整理。”

所以我猜即使存储介质是SSD也会有一些性能提升(因为删除行的链表将被消除)。OTOH(再次猜测)性能提升不会像 HDD 那样显着,这也将受益于运行优化后更快的顺序读取。

那么在这种情况下是否值得运行优化?性能提升是否足以超过 SSD 预期寿命的减少(由于不必要的重新排列存储的数据)?。我说的是在其他方面非常适合优化的表(具有频繁更新的可变长度行)。

mysql optimization ssd

6
推荐指数
2
解决办法
3280
查看次数

我可以进一步优化这些 APC 设置吗?

我想进一步优化 APC,但我不确定在哪里可以做些什么。首先是使用当前配置运行一周后的屏幕截图: APC仪表盘

我现在有以下几点我不确定:

  1. 我是否正确地看到碎片发生是因为缓存也用作用户缓存?
  2. 当我总共分配了 192MB 时,为什么碎片栏告诉我只有 5.8MB 的 100%?
  3. 这只是“内存使用”下的圆圈没有完全关闭的渲染问题吗?因为下面的 MB 值确实加起来了。(也就是说,这个圆圈在重启后看起来不错,当缓存越来越碎片化时它会变成这样。)
  4. 由于命中率非常好,我不确定碎片是否是一个大问题。你觉得我还能优化吗?

我最感兴趣的是回答这些问题。只有这样我才能更好地理解APC并自己做出调整。

一些详细信息:在此服务器上运行 Drupal 和 Magento。Drupal 也将其用作用户缓存。

我现在的问题是如何优化它。我可以分配更多的内存,但我不确定这是否真的有很大帮助。

更新:这是配置:

; The size of each shared memory segment in MB.
apc.shm_size = 192M

; Prevent files larger than this value from getting cached. Defaults to 1M. 
apc.max_file_size = 2M

; The number of seconds a cache entry is allowed to idle in a slot in case
; this cache entry slot is needed by another entry.
apc.ttl = …
Run Code Online (Sandbox Code Playgroud)

php optimization alternative-php-cache

6
推荐指数
1
解决办法
4647
查看次数