似乎php-fpm正在分配越来越多的内存,虽然峰值和下降的请求量。 无法发布多个图片,所以我把它们放在这里 。 正如你可以看到在图片的uri中,一个图片nginx请求,显示明显的下跌和高峰。 其他的,每个孩子的php-fpm记忆和平均记忆似乎并没有遵循相同的模式。 只有重新启动php-fpm才能起作用,即使如此,我也不能说我注意到了性能的任何变化。 系统是好的,响应时间是好的,一切都很好,只是好奇,如果这是预期的行为,并且如果它有性能好处或应该避免(通过降低max_requests什么?)。 系统运行Debian GNU / Linux 6.0 Squeeze,AMD64。 PHP版本5.3.6。 PHP 5.3.6 pool.d / www.conf: pm.max_children = 50 pm.start_servers = 30 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 1024 我已经得到了这些在php-fpm.log,因为它是新鲜安装的: [28-Jun-2011 14:45:39]警告:[池www]孩子1893年从信号9(SIGKILL)退出后从22296.217811秒开始 [28-Jun-2011 14:45:39]通知:[池www]孩子18391开始 [28-Jun-2011 14:45:39]警告:[池www]子1903从信号9(SIGKILL)退出后从22296.213677秒 [28-Jun-2011 14:45:39]通知:[池www]孩子18392开始 [28-Jun-2011 14:45:39]警告:在启动22296.213757秒后[pool www]子1904在信号9(SIGKILL)上退出 [28-Jun-2011 14:45:39]通知:[池www] 18393孩子开始 [28-Jun-2011 14:45:39]警告:在启动22296.214307秒后[pool www]子1905在信号9(SIGKILL)上退出 [28-Jun-2011 14:46:20]注意:fpm正在运行,pid 18410 […]
在我们的testing环境中,我们有很多应用程序分布在几个服务器和Glassfish域中。 为了使版本更简单,我希望每个应用程序每个客户都有一个Glassfish域(类似于许多docker实例的重量级版本)。 我听说Glassfish是资源密集型的,所以我想测量大概有多less实例可用于RAM。 我知道我可以通过启动实例和观察top输出来做到这一点,但是我应该专注于哪些具体的统计数据来获得每个实例的资源消耗的良好衡量标准?
在阅读了关于jemalloc等内存分配器对高度线程化应用程序的影响的博客文章后 ,我想在我们的一些服务器集群上进行更大规模的testing。 我们使用线程运行sphinx和apache,并在24台核心机器上运行。 安装jemalloc非常简单。 我们正在运行Centos 6,所以yum安装了jemalloc jemalloc-devel。 我的问题是,我们如何将系统上的所有内容都更改为使用jemalloc而不是Centos中内置的默认malloc。 研究指出,这是一个潜在的select: LD_PRELOAD=$LD_PRELOAD:/usr/lib64/libjemalloc.so.1 这将足以让所有使用jemalloc?
我最近安装了一台全新的CentOS 7.1服务器。 我注意到CentOS 6.7的一些不同之处,我希望有一种方法可以恢复到某些事物的旧观点。 例如: 问题1: top Top命令以不同的方式显示数据。 例如: 新的顶视图: top – 00:27:45 up 4:58, 1 user, load average: 0.08, 0.50, 0.89 Tasks: 155 total, 2 running, 153 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 1.1 sy, 0.0 ni, 98.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 4047624 total, […]
Windows 2008和2012服务器版本的最小内存使用量是多less? 我指的是所有与操作系统有关的东西。 该机器将是一个具有专用Web服务器软件的虚拟机,不依赖于操作系统(即没有IIS,没有域,最小的本地数据库),并不会占用太多内存(小于50 MB),尽pipeCPU使用量可能偶尔会在负载下激增。 我在问,因为可以select托pipeMB的RAM,而对于这样一个低开销的服务器,所有的RAM使用情况基本上都会被空闲的OS服务所使用。 所以任何可以降低基线成本的东西都会很好。 2008年是低内存使用情况的一个更好的起点吗? 2012年可以被强制降低吗? 上面的任何指针? PS:通过停止所有不必要的服务,禁用COMPort,Floppy和CDROM设备,并使用SetSystemFileCacheSize()API最小化caching文件大小,我已经设法将标准Windows 2008降低到192 MB物理。
对于Google而言,免费是一个相当困难的词汇,我所有的变体都没有提出与unix应用程序有关的任何东西 (这是为了查看内存使用情况 – 免费-m等)。 如果任何人有一个链接到源,所以我可以尝试编译它会很好。 干杯
目前,我正在运行一个Gitlab实例(v6.7.3)和一个DigitalOcean VPS上的Ghost -powered个人博客,其中512mb(最低端)由nginx提供 。 直到最近我都无法运行,因为Gitlab未能开始,抱怨内存不足。 我通过在VPS(1GB)上启用交换来解决问题(至less是暂时的)。 主要的问题似乎是,Gitlab产生了Sidekiq的25(!)个实例,每个实例占用我记忆的30%,如htop所示。 我在SF上发现了一个关于configurationGitlab使用较less的Sidekiq工作者的问题,但是没有得到一个被接受的回应。 我的问题是:用最低的内存占用量运行Gitlab的configuration是什么? 也许我不能减less这25名Sidekiq工作人员,但我可以做一些其他的工作来减less内存占用。 我的VPS仅供私人使用,我的Gitlab上有5或6个项目,每天最多需要5或6次提交,所以实际运行的最轻的configuration对我来说已经足够了。 我的博客也很less有点击。
我有一台主要运行SQL Server 2008的16 GB Windows Server 2008 x64计算机。在任务pipe理器中看到的可用内存非常低(目前为128 MB),即大约使用15.7 GB。 到现在为止还挺好。 现在,当我尝试使用大多数内存来缩小进程的范围时,我感到困惑:没有一个进程的任务pipe理器的“进程”选项卡中显示的工作集大小超过了200MB。 那么,也许工作集大小不是相关的计数器? 为了解决这个问题,我使用了一个PowerShell命令[1]来总结过程对象的每个单独的属性,采用暴力方法 – 当然,其中一个必须加起来为15.7 GB,对吧? 结果都没有,最接近的是VirtualMemorySize(大约12.7 GB)和PeakVirtualMemorySize(大约14.7 GB)。 WTF? 换句话说:许多与内存相关的进程信息中的哪一个是“正确的”,即在任务pipe理器的“性能”选项卡中显示的服务器的物理内存? 谢谢你们! [1] $ erroractionpreference =“默默继续”; get-process | gm | where-object {$ .membertype -eq“Property”} | foreach-object {$ .name; (get-process | measure-object -sum $ _。name).sum / 1MB}
所以,我从我们的监控系统得到了一个警告,即虚拟机上的内存不足15%。 我login进行调查,结果发现所讨论的虚拟机是configuration了dynamic内存的Hyper-V虚拟机,运行在Windows Server 2012(不是R2)上。 主机也是Windows Server 2012(不是R2)。 查看Hyper-Vpipe理器,我可以在“内存”选项卡下看到以下内容: 启动内存:2048 MB dynamic内存:已启用 最小内存:512 MB 最大内存:8192 MB 分配的内存:2826 MB [充分的机会扩大] 内存需求:2769 MB 内存状态:低 看客人,我看到以下使用任务pipe理器: 在使用中:3.2 GB 可用:483 MB 承诺:3.6 / 6.2 GB caching:410 MB 分页池:139 MB 非分页池:57.9 MB 主机上有足够的可用内存,以至于荒谬(42.8 GB可用…) 虚拟机内存缓冲区设置为20%。 这是预期的行为? 从我们的监控图中可以看出,这种情况持续了几个小时。 请注意,内存图显示可用内存的兆字节。
我有一个Windows 8.1主机尝试通过Hyper-V启动虚拟机。 虚拟机被configuration为使用10GB的RAM,我有16GB,它应该启动,但它不。 相反,我得到的消息 “{VM NAME}”无法初始化。 系统内存不足以启动虚拟机{VM NAME} 主机有16GB RAM,其中只有4.8GB正在使用。 这至less为Hyper-V提供了11GB的可用空间。 除了不能。 为了更准确,任务pipe理器报告以下内存情况: 在使用中 – 4.8GB 可用 – 11.0 GB 承诺 – 7.5 / 21.9GB caching – 10.8GB 分页池 – 592MB 非分页池 – 309MB 我知道我目前有10.8GB的“待机”内存。 但是如果Hyper-V要求的话,这个应该会被释放吗? 如果我重新启动,然后立即要求Hyper-V启动机器,它的工作原理,但我必须快速,因为备用内存得到很快填补。 这是正常的吗? 有没有办法清空备用内存并将其恢复,以便我可以启动虚拟机而不必重新启动主机?