目前我正在运行一个带有 4 个专用内存缓存服务器的生产环境,每个服务器都有 48Gb 的 RAM(42 个专用于内存缓存)。现在他们做得很好,但流量和内容正在增长,明年肯定也会增长。
您对进一步扩展 memcached 的策略有何看法?到目前为止你做得如何:
您是否向这些机器添加更多 RAM 直到它们的容量达到最大——在相同数量的机器上有效地将缓存池翻倍?或者您是否通过添加更多相同的框,使用相同数量的 RAM 来水平扩展。
当前的机器肯定可以处理更多的 RAM,因为它们的 CPU 负载很低,唯一的瓶颈是内存,但我想知道分配缓存是否不是一个更好的策略,使事情变得更加冗余并最大限度地减少对缓存的影响丢失一盒(丢失 48Gb 缓存与丢失 96Gb)。你会(或让你)如何处理这个决定。
Windows 2008 和 2012 服务器版本的最小内存使用量是多少?
我指的是所有与操作系统相关的事情。这台机器将是一个带有专用网络服务器软件的虚拟机,它不依赖于操作系统(即没有 IIS,没有域,最小的本地数据库)并且不会使用太多内存(小于 50 MB),尽管 CPU在负载下使用率可能偶尔会激增。
我之所以这么问是因为有一些托管选项可以按 MB 的 RAM 收费,而对于这样一个低开销的服务器,所有的 RAM 使用量基本上都将由空闲的操作系统服务使用。所以任何可以降低基线成本的东西都会很棒。
2008 是低内存使用率的更好起点吗?2012年的会被压低吗?
以上有什么指点吗?
PS:通过停止所有不必要的服务、禁用 COMPort、软盘和 CDROM 设备,以及使用 SetSystemFileCacheSize() API 最小化缓存文件大小,我已经设法在没有 RDP 会话处于活动状态时将标准 Windows 2008 的物理大小降低到 192 MB。
windows windows-server-2008 memory memory-usage windows-server-2012
我想做什么
服务器资源限制有时会很紧张;为了防止内存耗尽,我不得不限制服务器进程。我需要一点专家的帮助来知道我是否在正确的轨道上,并且可能会发现任何明显的设置更改,以帮助系统以更高的稳定性运行更多。
历史
最近我的公司从共享主机升级到了 VPS。基本上我们已经超出了我们的共享主机,并且由于周末 CPU 使用率过高,主机暂停了我们的网站,因此开始出现问题。我们的网站用户倾向于每周在周五和周六增加一倍或三倍,这在我们的案例中并不意外。(一周内每天约 5000 次访问 [~2500 名访客],周末约 9500 次访问 [~4500 名访客]。)
现在我们在 VPS 上,我们没有 CPU 问题。(事实上,CentOS WHM 控制面板说我们处于“.000201% CPU 负载”。)但是,我们遇到了内存不足问题,导致崩溃。
问题概要
我们的网站是基于 WordPress 的。然而,除了评论,几乎没有“写”活动;大多数用户只是看到我们创建的相当静态的页面。
几个月前,也就是 2012 年 10 月,当我们第一次升级到 VPS 时,该网站在一周内运行良好,但每个周末都被内存阻塞。通常它会反复崩溃(24 小时内有 5-20 次,偶尔发生),通常从周五晚上开始,一直持续到周六下午。
在一周内,服务器始终以 65-90% 的内存使用率运行,而在周末它会达到 100%,从而导致崩溃。
采取的纠正措施
由于我是 VPS 的新手,所以我从所有默认设置开始。后来我开始调整,遵循我在本网站和其他网站上阅读的有关解决内存问题的建议。
我对 MySQL、PHP 和 Apache 进行了调整,在“当前配置”中总结如下。我还重新编译了 Apache 和 PHP 以删除不需要的模块。我为 WordPress (W3T) 安装了一个更好的缓存插件,并添加了 APC 操作码缓存。我也开始使用 gz 压缩,并将大量静态文件移动到单独的子域。
我编写了一个漂亮的小脚本来按计划检查服务器状态,并根据需要重新启动它,它还向我发送了服务器错误日志的副本,以帮助进行故障排除。(我知道,如果那样的话,这只是创可贴。但保持网站在线很重要,因为没有人愿意在周末坐下来监视它。)
就在最近,大约一周前(2013 年 1 月),我将服务器 RAM 从 1 GB(2 GB 突发)升级到 2 GB(3 GB 突发)。这似乎解决了大部分问题,但我仍然偶尔会收到服务器挂起的通知(大约一周一次),以及“无法应用进程槽”PHP 错误。
当前配置
它是一个 …
I am having some troubles with CPU loading an memory with Apache Web Server.
We are running a Ubuntu Server 12.04 LTS on a Virtual Machine. Our server have the following specs:
We configured the server to run a Drupal (7.23) based website. So, we installed Apache, PHP, MySQL... The versions are below:
我们有一个 Windows Server 2008 R2(64 位)8GB 服务器,根据 Sysinternals RAMMap,使用 AWE 分配了 2GB 内存。据我了解,这意味着这些页面保留在物理内存中,永远不会被推出。这会导致其他应用程序被推出物理内存。
在 RAMMap 的 Physical Pages 选项卡上,所有 AWE 页面的 Process 列都为空。
我们在那个盒子上运行 SQL Server,但是(通过 SQL Server Management Studio,在服务器属性 -> 内存,在服务器内存选项下)它说配置为不使用 AWE。
但是,当停止SQL Server 时,AWE 页面突然消失了。所以它确实是罪魁祸首。
所以我有三个问题:
我运行的服务器刚刚遇到了我以前从未遇到过的错误。它发出几声哔哔声,重新启动,并卡在启动屏幕(BIOS 显示其徽标并开始列出信息的部分)并出现错误:
节点 0:DRAM 不可纠正的 ECC 错误
节点 1:HT 链接同步错误
硬重置后,系统启动正常,但尚未在 edac-util 上报告任何内容。
我的研究告诉我,即使 ECC 内存和系统处于理想状态,仍然可能出现无法纠正的错误,并且可能会在系统的生命周期中的某个时刻发生;一些报告建议至少一年或更早一次。
该服务器运行带有多个 ECC 模块的 CentOS 6.5。我已经在尝试诊断哪个模块引发了错误,以评估这是错误还是不可避免的结果,例如宇宙射线。
我的研究还表明,当系统像这样停止时,日志无处可写,唯一可靠的方法是将系统连接到另一个系统,并通过串行端口写出日志。
除了通常的 edac-util、memtest、压力测试和预防性更换之外,在解决这个错误时还有什么我应该考虑的吗?
我无法在我搜索的任何 CentOS 日志中找到此崩溃的任何记录,这与我的信念一致,即无法将此错误记录到本地磁盘。该错误仅在自动重启后由 bios 报告给我。是否建议始终将系统日志写入串行以记录这些类型的错误?
使用单个系统可以避免这种故障,还是只能使用昂贵的企业解决方案才能避免?
在这些故障情况下,我可以做些什么来为单个生产服务器提供回退措施;例如,生产服务器本身不会跨越多台机器,但可以存在后备服务器。
我已经阅读了很多帖子和手册,试图找出如何在 Ubuntu 上增加 MySQL 5.6 中的内存,其中说有 3 种方法:
我假设 2 和 3 会在 MySQL 重新启动时丢失,剩下 1。
问题是,我的 /etc/mysql/my.conf 中没有这样的设置。
conf 文件中不存在字符串“inno”,“buffer_size”或“buffer-size”也不存在(但“key_buffer”在那里)。
我通过以下方式安装它:
# apt-get install mysql-server-5.6
Run Code Online (Sandbox Code Playgroud)
我可以改变价值的任何想法?
我是否以某种方式在没有 InnoDB 引擎的情况下安装了 MySQL?
我在看错误的文件吗?
/etc/mysql 下还有一些其他的 .cnf 文件,但它们也没有 innodb 之类的东西。
mysql> show variables like 'inno%'
:
innodb_buffer_pool_size | 134217728 |
Run Code Online (Sandbox Code Playgroud)
所以看起来 InnoDB 已安装,我只是找不到它的配置文件在哪里。
任何帮助表示赞赏。
技术人员——我有一台基于 LENOVO x3650 X6/x64 的 Windows 服务器,带有 4 个 18 核/36 个逻辑处理器——安装了物理内存 (ram) @1.5 TB,总虚拟内存 @1.5 TB。但是,我只显示了 295 GB 的可用物理内存和 297 GB 的可用虚拟内存。发生了什么?Windows Server 2012 R2 Standard edition, version 6.3.9600, build 9600 是否会导致限制?我知道在 2008 年的 windows 产品世界中,企业版和标准版之间存在差异——但 2012 年服务器版的命名约定是不同的。windows server 2012 有一个数据中心类的 windows 产品——这是等价的吗?我是不是走错了路?我是否应该寻找不同的解释来解释为什么我只展示了我认为应该可用的 20%?
交换使用率低,操作系统有时会耗尽内存并开始破坏进程
swapon -s
Filename Type Size Used Priority
/dev/vda1 partition 2047992 75030 1
Run Code Online (Sandbox Code Playgroud)
内存使用率约为 97%。知道出了什么问题吗?我尝试关闭/打开交换,但没有帮助。 v
Centos 6.5 / 内核 2.6.32
cat /proc/meminfo
MemTotal: 15000800 kB
MemFree: 300532 kB
Buffers: 11364 kB
Cached: 211224 kB
SwapCached: 0 kB
Active: 12613992 kB
Inactive: 1854012 kB
Active(anon): 12555272 kB
Inactive(anon): 1690320 kB
Active(file): 58720 kB
Inactive(file): 163692 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2047992 kB
SwapFree: 2047992 kB
Dirty: 68 kB
Writeback: 0 kB
AnonPages: 14245460 kB
Mapped: 19440 kB …Run Code Online (Sandbox Code Playgroud) 有这样的设备类别吗?
服务器机器(机架、SAS 驱动器……)可以提供 8 个 RAM 插槽,通常配备 32-64GB 的 RAM,并且很常见,购买起来很便宜……但不能运行(100 瓦)
低功耗解决方案(使用过的笔记本电脑 - 移动处理器、低功耗 RAM 等)通常提供不超过 8GB 的容量(16 是我见过的最大容量),但可以在 30W 的情况下运行,我猜台式电脑可以't 接近(我可能是错的)。
在谷歌搜索低功耗服务器时,我向我提供了带有集成 RAM 的 ARM 计算机,但总是太少。
存储不是问题,处理器可以是任何 2+ 核(甚至是 ARM)。重要的是 RAM - 很多,在一台计算机上。我应该看什么?
[编辑] 不寻找最前沿的技术,更经济。
memory ×10
windows ×3
apache-2.2 ×2
centos ×2
mysql ×2
buffer ×1
ecc ×1
hardware ×1
innodb ×1
linux ×1
memcached ×1
memory-usage ×1
optimization ×1
performance ×1
php ×1
php5 ×1
redundancy ×1
scaling ×1
sql-server ×1
swap ×1
ubuntu ×1