- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在couchbase网站上,可以看到couchbase可以轻松达到每秒10万个请求。由于我的应用程序基本上只需要键/值存储,所以我尝试使用 couchbase。因此,我尝试在我的提供商内部构建一个小型集群。我使用 python 客户端和 Couchbase 服务器 2.2.0 社区版。
将单个节点加入“集群”:我每秒可以处理 16000 个请求:太好了!但是当集群中有 2 个节点时,我每秒仅收到 100 个“set(key,val)”请求,而“get(key)”请求也是如此(我使用了默认存储桶)。这适用于非常少量的 key :10 000 个 key ,长度:只有 10 个字节!
查看统计数据时,似乎没有瓶颈(CPU/磁盘/RAM)。
我的硬件:
Core i5 (3.4 Ghz)
32 GB RAM
Disk : SSD 120Go
Network : Gigabit, bandwith limited to 200 Mbps
我看到的唯一一点是我在 2 个节点之间有 10 毫秒的延迟:
最佳答案
如果您在同一个数据中心同时运行客户端和服务器,则 10 毫秒的延迟是相当高的,因此我要做的第一件事就是尝试弄清楚为什么您的网络会产生如此高的延迟。
正如您所提到的,您正在执行大约 100 次操作/秒,如果您的网络延迟为 10 毫秒,这是有意义的。这也意味着您可能通过网络进行同步 IO。这意味着您在发送下一个请求之前等待一个请求进行往返。 python 客户端应具有异步 API,允许您发送多个请求而无需等待响应稍后返回。这将大大提高您可以执行的操作数/秒。
我知道该网站提到 Couchbase 可以为单个节点执行 100k ops/sec,但我已经达到了将近 250k ops/sec。唯一真正会让你慢下来的是网络(我在这种情况下已经达到极限)以及当你请求它们时有多少项目驻留在内存中,因为必须去磁盘会降低你的性能,特别是如果你只有几个与数据库的连接。
以下是对您发布的问题的一些回答。
[编辑] 1 个节点的性能没有理由优于 2 个节点。事实上,拥有更多节点应该会使您拥有更多吞吐量。
关于沙发底座 : 160x faster with only one node : why?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23603621/
我希望使用基本 R (而不是 ggplot)创建具有多行的水平图例。legend() 中有一个多列选项,但没有多行选项。有没有办法做到这一点?下面的示例中,水平图例对于绘图来说太宽。 MyCol N
我是一名优秀的程序员,十分优秀!