ArangoDB 请求负载均衡
ArangoDB Request Load balancing
我目前正在使用 YCSB 在 ArangoDB 集群 (v3.7.3) 上为我的研究做基准测试,我使用启动程序 (here).
我想了解这样的设置(例如,我使用 4 个虚拟机)是否以及如何帮助平衡请求负载?
如果我有节点 A、B、C 和 D,我告诉 YCSB 节点 A 的 IP,所有请求都转到节点 A...
这意味着如果你想平衡请求负载,集群是不必要的,不是吗?它只对数据复制有意义。
那我将如何处理请求负载?我通常会在我的应用程序中这样做,但如果我使用 YCSB 等现有工具,我就不能这样做......(或者我可以吗?)
感谢您的帮助!
我也遇到了这个问题,最终通过站起来解决了 nginx in front of my cluster, providing a stable, language-independent way to distribute query load. I found nginx surprisingly simple to configure, but take a look at the upstream 模块以获取更多详细信息。
upstream arangodb {
server coord-1.my.domain:8529;
server coord-2.my.domain:8529;
server coord-3.my.domain:8529;
}
server {
listen *:80 default_server;
server_name _; # Listens for ALL hostnames
proxy_next_upstream error timeout invalid_header;
location / {
proxy_pass http://arangodb;
}
}
它并不适合所有人,但在那些你只需要负载平衡并且不想编写一堆代码(最终会很慢)来解析协调器的时候效果很好。
我已经向 ArangoDB 询问了一个本地代理服务器解决方案,但我敢打赌它在他们的待办事项列表中排名较低,因为考虑到大量的配置选项,支持起来可能很棘手。
我目前正在使用 YCSB 在 ArangoDB 集群 (v3.7.3) 上为我的研究做基准测试,我使用启动程序 (here).
我想了解这样的设置(例如,我使用 4 个虚拟机)是否以及如何帮助平衡请求负载? 如果我有节点 A、B、C 和 D,我告诉 YCSB 节点 A 的 IP,所有请求都转到节点 A...
这意味着如果你想平衡请求负载,集群是不必要的,不是吗?它只对数据复制有意义。
那我将如何处理请求负载?我通常会在我的应用程序中这样做,但如果我使用 YCSB 等现有工具,我就不能这样做......(或者我可以吗?)
感谢您的帮助!
我也遇到了这个问题,最终通过站起来解决了 nginx in front of my cluster, providing a stable, language-independent way to distribute query load. I found nginx surprisingly simple to configure, but take a look at the upstream 模块以获取更多详细信息。
upstream arangodb {
server coord-1.my.domain:8529;
server coord-2.my.domain:8529;
server coord-3.my.domain:8529;
}
server {
listen *:80 default_server;
server_name _; # Listens for ALL hostnames
proxy_next_upstream error timeout invalid_header;
location / {
proxy_pass http://arangodb;
}
}
它并不适合所有人,但在那些你只需要负载平衡并且不想编写一堆代码(最终会很慢)来解析协调器的时候效果很好。
我已经向 ArangoDB 询问了一个本地代理服务器解决方案,但我敢打赌它在他们的待办事项列表中排名较低,因为考虑到大量的配置选项,支持起来可能很棘手。