小编Nan*_*nne的帖子

memcached 中的意外(?)高“浪费”内存

已更新,请参阅冗长(抱歉)问题的底部。

查看我们的 memcached 统计数据,我想我发现了一个我以前不知道的问题。似乎我们有大量浪费的空间。我检查了phpmemcacheadmin是否有变化,发现这张图片正盯着我看:

memcached 缓存大小图形

现在我的印象是,最坏的情况是有 50% 的浪费,尽管我是第一个承认不了解所有细节的人。我已经阅读了 - 除其他外 -这个页面确实有点旧,但我们的 memcached 版本也是如此。我想我确实了解系统是如何工作的(例如)我相信,但我很难理解我们如何才能达到 76% 的空间浪费。

phpmemcacheadmin 显示的驱逐率是2 ev/s,所以这里有一些问题。

  • 主要问题是:我能做些什么来解决这个问题。我可以投入更多内存(我认为有一些额外的可用空间),也许我应该摆弄平板配置(这个版本甚至可能吗?),也许还有其他选择?升级 memcached 版本不是一个快速可用的选项。

  • 出于好奇,第二个问题当然是 75%(和上升)的空间浪费率是否是预期的,如果是,为什么。

系统:目前我对此无能为力,我知道memcached版本不是最新的,但这些是我处理过的牌。

  • 内存缓存 1.4.5
  • 阿帕奇 2.2.17
  • PHP 5.3.5

作为对@DavidSchwartz 的回答的回应:这里是 phpmemcacheadmin 生成的平板统计信息:(顺便说一句,还有更多的平板)

我还在此处以文本格式粘贴了稍后的统计数据

楼板细节

更新

我用 -f 1.5 重新启动了守护进程,它看起来非常好。经过一些变暖,我们使用/浪费了 50 / 50 。但是,和以前一样,我们一天中的时间越长(白天变得更忙),它就会开始回落到目前的水平:30 / 70,并且浪费仍在增加。除此之外,我仍然不知道“浪费”从何而来。我看到这个板块:

**Slab 5 Stats**
Chunk Size  496.0 Bytes
Used Chunk  77502 [24.6 %]
Total Chunk 314986
Total Page  149
Wasted      117.3 MBytes
Hits        30.9 …
Run Code Online (Sandbox Code Playgroud)

memcached

18
推荐指数
2
解决办法
8222
查看次数

使用 nginx 负载平衡服务器重复 POST 请求(状态 499)

双重上传

自从我们从一个简单的 Apache 实例转向负载平衡环境以来,有时会出现 POST 请求重复的问题。我们正在运行 nginx 作为反向代理。静态内容由 nginx 本身提供,动态内容由两个 Apache 后端提供。

我已经检查过这不是接口/用户错误。一个小例子:简单的图片上传会导致图片上传两次。请求/POST 不会通过双击或用户失败发送两次。我没有发现任何证据表明浏览器发送了两次请求,所以我怀疑是在服务器端。(请注意,这只是怀疑。)大多数这些请求是内部的,这意味着它们来自员工,因此我可以验证它们是如何产生的。

我能找到的唯一“错误”是 nginx499在这些情况下会记录错误。但是,我不确定这是问题的原因还是只是问题的(副作用)。(我知道 499 不是默认的 http 状态,它是 nginx 状态,意思是“客户端已关闭连接”)

要求

重复的 POST 请求几乎是所有可能需要一段时间的请求。我在这里作为示例展示的是一个简单的图像上传,但脚本在后台执行一些操作(图像必须转换为不同的格式/大小,并且应该分发到两个服务器等)。

日志

一个例子是上传图片。nginx 将记录一个“499”和一个 200 请求,但 Apache 正在接收(并处理!)两个请求。

阿帕奇

[17:17:37 +0200] "POST ***URL** HTTP/1. 0" 200 9045   
[17:17:47 +0200] "POST ***URL** HTTP/1. 0" 200 20687
Run Code Online (Sandbox Code Playgroud)

nginx

[17:17:47 +0200] "POST ***URL** HTTP/1.1" 499 0 
[17:17:52 +0200] "POST ***URL** HTTP/1.1" 200 5641
Run Code Online (Sandbox Code Playgroud)

怀疑

在我看来,更大/更慢的上传受到更多影响,所以我怀疑超时。我试图阅读 499 错误:结论似乎是“客户端关闭连接”。这可能是后台的情况,但我不确定这将如何意味着应该发出第二个请求,并且肯定不会发生“用户关闭浏览器”之类的事情。

目前,它似乎有助于分解较慢的 POST 请求(如果有多个事情要做,只需让用户选择 1 并为另一个选择第二次 POST),但这可能只是降低了它发生的机会。没有把握。

这显然是一个临时解决方案。如果超时,我需要找出在哪里并增加相应的数字,但我不确定为什么超时会导致这种行为:我怀疑是“好吧,出错了”消息,而不是重复。 …

nginx http-status-code apache-2.2

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

带有 cURL 的 NTLM 返回 401

目标:连接到Exchange服务器(EWS)
方法:卷曲
的问题:无法获得认证(NTLM),请求返回401 1

似乎有一个古老的、有据可查的2问题始于 cURL 从 OpenSSL 到 NSS 的转移。我读到 NTLM 的实现依赖于 OpenSSL,因此这一举动破坏了 NTLM 身份验证。

问题如下所示,但重要的部分似乎是返回的401gss_init_sec_context()下面的部分。

我不明白的是我当前的版本:

  • 根据https://launchpad.net/ubuntu/+source/curl/7.22.0-3ubuntu4有一个 OpenSSL 变体
  • 根据同一个链接支持 NTLM
  • 实际上根据下面的日志使用了这个变体(而不是 NSS)(它说libcurl/7.22.0 OpenSSL
  • 根据上述几点,不应受到链接错误的困扰。
  • 但受到影响,正如我得到 401 的事实所示

我不确定如何解决这个问题。我可以找到很多关于这个问题的旧(主要是 2010 年)参考,但没有什么新的,当然也没有解决方案。我知道提供的参考资料(参见2)表明这可能适用于旧版本(7.19),但我无法(也不愿意)降级到该版本。

交换通信 (EWS) 的几个实现使用 cURL 来检索 EWS 文件(wsdl 等),所以我确信必须有一种工作方法,但我找不到它。有谁知道我能做什么?我是否有另一个错误,我是否对事实的解释有误,这是否仍然与链接中提供的情况相同并且永远不会修复?


1错误是这样的:

curl https://*DOMAIN*/Exchange.asmx -w %{http_code} --ntlm -u *USERNAME* --verbose --show-error
Enter host password for user '*USERNAME':
* About to connect() to DOMAIN port …
Run Code Online (Sandbox Code Playgroud)

linux exchange ntlm exchange-2010 curl

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

强制安装完成后,如何降低 ESXI 接受级别?

.vib我正在尝试在 ESXi 服务器上安装。这个特定的需要“社区”的接受程度。我尝试将合作伙伴到社区的级别设置如下:

 # esxcli software acceptance set --level=CommunitySupported
Run Code Online (Sandbox Code Playgroud)

结果是:

[AcceptanceConfigError]
由于虚拟安装的 VIBGhetto_bootbank_ghettoVCB_1.0.0-0.0.0 的接受级别较低,因此无法设置社区的接受级别。
请参阅日志文件了解更多详细信息。

如果我列出已安装的软件,则该特定文件将列出为:

ghettoVCB   1.0.0-0.0.0    virtuallyGhetto  CommunitySupported  2015-10-27
Run Code Online (Sandbox Code Playgroud)

这确实意味着我尝试设置的级别低于它需要的级别?进一步挖掘,似乎这是通过在安装命令中添加 -f 来安装的。

如何降低这台机器的接受程度?是否有官方方法,或者至少有一个已知问题,其中有一些软件需要比当前实际设置更低的设置?

有趣的是,据我所知,CommunitySupported 是最低级别,所以我不能将其设置得更低:我的猜测是它低于当前设置会导致出现问题吗?

软件运行情况为:

VMware ESXi 5.5.0 内部版本 2068190
VMware ESXi 5.5.0 更新 2

因为在这个服务器上我什至不需要那个“ghettoVCB”,所以我只是卸载了它;此后降低接受度效果非常好。 但这显然是一种解决方法,并不适用于所有情况,所以我对真正的解决方案感兴趣//我该做什么。

vmware-esxi

5
推荐指数
1
解决办法
5920
查看次数