MySQL现在偶尔会崩溃,因为我相信,在my.cnf(当前为210M)的innodb-buffer-pool-size集合上面有一个大的请求,这个请求我首先要为mysql启动。 这里是错误日志: 130518 17:28:52 mysqld_safe Number of processes running now: 0 130518 17:28:52 mysqld_safe mysqld restarted 130518 17:28:52 [Note] Plugin 'FEDERATED' is disabled. 130518 17:28:52 InnoDB: Mutexes and rw_locks use GCC atomic builtins 130518 17:28:52 InnoDB: Compressed tables use zlib 1.2.3 130518 17:28:52 InnoDB: Using Linux native AIO 130518 17:28:52 InnoDB: Initializing buffer pool, size […]
我在CentOS6上运行一个专用的Apache Web服务器:12GB内存4 cpu 我的httpdconfiguration如下,从/etc/httpd/conf/httpd.conf Timeout 60 KeepAlive Off MaxKeepAliveRequests 100 KeepAliveTimeout 15 服务器使用Prefork MPM进行以下设置。 <IfModule prefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 50 MaxClients 50 MaxRequestsPerChild 300 </IfModule> 这是从以前的设置调整: <IfModule prefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 </IfModule> 问题 几次更改这些值并重新启动httpd后,始终会发生同样的情况。 其中一个PID上升到11GB的内存,所以我手动杀死它,内存得到释放。 这是我杀了一个stream氓PID并重新启动后的免费-m输出: total used free shared buffers cached […]
我正在尝试使用perfmon,并根据MSDN ,“系统代码总字节”计数器… 显示当前在虚拟内存中的可分页操作系统代码的大小(以字节为单位)。 它是操作系统在不使用时可写入磁盘的物理内存量的度量。 通过添加Ntoskrnl.exe,Hal.dll,引导驱动程序和Ntldr / osloader加载的文件系统中的字节来计算此值。 该计数器不包括必须保留在物理内存中且不能写入磁盘的代码。 但是这不是一个矛盾吗? 它说这是“虚拟内存的大小”,下一句话是“正在使用的物理内存的数量”。 根据我的理解,仅仅因为存在虚拟内存并不意味着有任何物理内存映射到它,因为当没有足够的物理内存时,可以将内存分页到磁盘上的页面文件。 所以虚拟内存的大小和物理内存的大小明显不同。 另一件令我困惑的事情是“通过添加Ntoskrnl.exe,Hal.dll中的字节,引导驱动程序和Ntldr / osloader加载的文件系统来计算值”。 那么不pipe这些文件中有多less文件加载到虚拟/物理内存中,这个数字都不是一个常量? 有人能帮我理解这个柜台是什么意思吗?
Linux内核文档说: SHMALL: 此参数设置可在系统范围内使用的共享内存页面的总量。 因此,SHMALL至less应该是ceil(shmmax / PAGE_SIZE)。 但是我找不到页面的定义。 就它而言, shmmax定义了共享内存段的最大大小。 所以我不明白这个段落也不是ceil(shmmax/PAGE_SIZE)部分。 (我正在研究这个,以确定如何设置我的服务器postgres。)
我在一台小机器上吃太多的内存时遇到了很多麻烦,我正在寻找一些帮助,弄清楚它为什么吃这么多。 我有一个运行Debian Wheezy的256MB内存的小型虚拟机。 在这台服务器上,我安装了apache2和mysql。 我在这个服务器上做的不多,只有一些使用简单的网站和一个邮件服务器。 出于某种原因,一天几次,我的MySQL服务器崩溃。 当我检查我的系统日志时,我发现以下错误: 内核:[3323593.630722]内存不足UB:OOM杀死进程9471(mysqld)得分0 vm:327824kB,rss:37080kB,swap:0kB 所以据我所知,mysql开始消耗太多的内存,并被系统杀死。 我logging缓慢的查询,并保持我的mysql.err日志上的选项卡,但我没有看到任何东西,会告诉我为什么MySQL开始吃这么多的内存太多的价值。 我my.cnf文件有这些选项设置: key_buffer = 8M max_allowed_packet = 16M thread_stack = 128K thread_cache_size = 8 query_cache_limit = 512K query_cache_size = 8M 另一件事是,当我检查正在使用的内存量,当我启动MySQL,甚至在运行的白天,我通常有大约128MB的空闲。 我看不出mysql将如何最终吃掉那么多。 我能做些什么来追踪这个问题?
我搜遍了“我的Linux内存在哪里?” 问题,但我找不到类似的泄漏情况: OEL 6.3 x86_64 Linux,配有6GB内存 没有任何我的主要组件运行(2 tomcat,MySQL,基于灰熊的web容器)有大约2.3GB的内存被系统的某个未知部分 几乎没有MB文件caching 几乎没有MB板坯高速caching 即使重新启动后 系统是VMWare上的虚拟主机 这里是RES desc命令的最高输出: top – 15:57:26 up 3:26, 1 user, load average: 0.27, 0.26, 0.76 Tasks: 192 total, 1 running, 191 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 5993276k total, 2257256k used, 3736020k free, 23772k buffers Swap: […]
我最近面对一些网页的服务器响应时间大大增加(响应时间在10-20秒范围内)。 例如,对于页面http://www.edmhunters.com/afrojack/ – 谷歌网页速度testing表示,服务器响应迅速(这意味着它在200毫秒以下)。 对于具有相同视图和模板的另一个页面 – http://www.edmhunters.com/skrillex/ – 谷歌网页速度testing表示,服务器响应时间是10.3秒。 假设错误在我的服务器configuration中,并且与代码本身无关,是否安全? 我的网站是一个Django应用程序,使用DigitalOcean(1GB内存,30GB SSD磁盘,Ubuntu 14.04 x64)托pipe的Nginx,Gunicorn,PostgreSQL和Memcached。 以下是我对Nginx的一些configuration设置 worker_processes 4; events { worker_connections 768; } http { sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; gzip on; server { listen 80; client_max_body_size 4G; server_name www.edmhunters.com; keepalive_timeout 5; } } 对于Gunicorn,我已经把工人数量设置为3.对于这里有什么可能是错误的任何build议? 当谈到服务器托pipe时,我几乎是一个小菜鸟,这件事让我感到莫名其妙。
我以前问过一个有非常高的非分页池内存使用率的服务器的问题 ,并且有人解释了如何使用poolmon来追踪问题驱动程序。 我做了这个,但我不确定我是否确定了这个问题。 运行poolmon: 现在searchfwpx我只有一个“匹配”: dsac.exe? ADpipe理中心正在造成内存泄漏? – 这显然是不对的,但这是唯一能find的。 searchfwpx池标签我可以看到人们用McAfee防病毒产品遇到的一些问题(但Symantec SEP安装在此服务器上)。 根据这个Technet博客文章,fwpx池标签是与这个驱动程序相关的:Fwpx – fwpkclnt.sys – WFP NBL标记的上下文 但如果是这样的话,为什么没有find它? 然后我GOOGLE了更多,发现这个kb: https : //support.microsoft.com/en-us/kb/2885980 根据kb FwpsAllocateCloneNetBufferlist()API泄漏内存真棒。 但我仍然不是100%,这是问题。 在安装热修复程序之前,我如何确认这个问题是由这个WFP错误引起的? 我会假设它的SEP是使用错误的WFP API。 这是有道理的,因为我看到了McAfee用户(另一个可能使用API的AV产品)有类似的内存泄漏问题。 但是可以肯定的是,如何确定正在调用WFP API的程序 – 如果这真的发生了。
交换的使用率很低,操作系统有时会耗尽内存,并开始划分进程 swapon -s Filename Type Size Used Priority /dev/vda1 partition 2047992 75030 1 内存大约有97%的使用。 任何想法是什么错误? 我试着把交换掉,这没有帮助 Centos 6.5 / kernel 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 […]
我知道你应该总是有相同的内存时钟速度,最好的情况下,即使是相同的制造商意味着相同的RAM模块。 但是,如果您使用以下设置,会发生什么情况: 具有32 GB内存的服务器 1x 16 GB DDR4 1600 MHz 1x 16 GB DDR4 2100 Mhz 一个内存是以2100兆赫的速度运行还是都会降到最低的兆赫(也就是1600)? 除了可能的性能损失之外,还有其他什么原因不使用给定的设置? 即使我知道什么是build议,我对可能的负面影响非常感兴趣。