使用 Memcache 将决策逻辑添加到 Apache 的 mod_proxy_balancer
我想要实现的是让 Apache 的 mod_proxy_balancer 检查是否已经使用 Memcache 存储发出了请求。
基本上:
流媒体请求进来。
检查流媒体是否已通过 Memcache 提供服务。
如果是,该流媒体服务器能否处理另一个请求。
如果是,则向所述流媒体服务器发送请求。
如果没有则发送请求到队列中的下一个流媒体服务器。
将键:值对存储在 Memcache 中。
我的问题是:
mod_proxy_balancer 是否已经以某种方式做到了这一点?
有没有办法让 Apache 成为一个内容感知的负载均衡器?
任何其他建议、其他软件、其他方法等也将不胜感激
。干杯。
What I am trying to achieve is to have Apache's mod_proxy_balancer check if a request was already made using a Memcache store.
Basically:
Streaming media request comes in.
Check if streaming media has already been served with Memcache.
If so, can that streaming media server handle another request.
If so send request to said streaming media server.
If not send request to the next streaming media server in line.
Store key:value pair in Memcache.
My questions are:
Does mod_proxy_balancer already do this in some way?
Is there anyway to make Apache a content-aware load balancer?
Any other suggestions would be greatly appreciated too, other software, other approach, etc.
Cheers.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
查看“mod_proxy_balancer.c”;人们可以按照文件中的注释中的建议添加其他 lbmethods。类似于“bymemcached_t”或“bymemcached_r”,其中 t 和 r 结尾分别表示“bytraffic”和“byrequests”方法。我们将执行上面的伪代码,如果没有找到,则继续执行其他方法并将结果保存在 memcached 存储中。
在我的研究中,我发现了 HAProxy,它完全按照我想要的 文档 使用“uri”的平衡算法选项,只是不使用 Memcached。这对我的目的来说很好。
Looking at 'mod_proxy_balancer.c'; one could, as suggested in the comments in the file, add additional lbmethods. Something along the lines of "bymemcached_t" or "bymemcached_r" where the t and r endings denote the "bytraffic" and "byrequests" methods respectively. We would do our pseudo code above and if not found proceed to the other methods and save the result in the memcached store.
In my research I came across HAProxy which does exactly what I want from its documentation using the balance algorithm option of 'uri' just not using Memcached. Which is fine for my purposes.