- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用将从 Asterisk 拨号方案调用的 Perl 编写多个 AGI。我希望同时收到大量调用,因此我需要一种方法来对它们进行负载平衡。我被建议使用 FastAGI 而不是 AGI。问题是我的 AGI 将分布在许多服务器上,而不仅仅是一个服务器,我需要我的入口点 Asterisk 根据它们的可用性在这些服务器(agis 所在的位置)之间调度调用。因此,我想到为 FastAGI 应用程序提供多个 IP 地址而不是一个。可能吗?
最佳答案
任何 TCP 反向代理都可以做到这一点。 HAProxy是一个和nginx与 TCP module成为另一个。
不久前,我使用 node.js ( nodast ) 制作了我自己的 FastAGI 代理来解决这个非常具体的问题以及更多问题,包括通过 SSL 运行 FastAGI 协议(protocol)和基于 AGI 路由请求的能力请求位置和参数(比如$dnis, $channel, $language, ...)
此外,由于代理配置基本上是 javascript,您实际上可以以非常有趣的方式进行负载平衡。
示例配置如下所示:
var config = {
listen : 9090,
upstreams : {
test : 'localhost:4573',
foobar : 'foobar.com:4573'
},
routes : {
'agi://(.*):([0-9]*)/(.*)' : function() {
if (this.$callerid === 'unknown') {
return ('agi://foobar/script/' + this.$3);
} else {
return ('agi://foobar/script/' + this.$3 + '?callerid' + this.$callerid);
}
},
'.*' : function() {
return ('agi://test/');
},
'agi://192.168.129.170:9090/' : 'agi://test/'
}
};
exports.config = config;
关于load-balancing - 如何负载平衡 FastAGI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/980417/
我正在使用将从 Asterisk 拨号方案调用的 Perl 编写多个 AGI。我希望同时收到大量调用,因此我需要一种方法来对它们进行负载平衡。我被建议使用 FastAGI 而不是 AGI。问题是我的
我正在使用 Starpy 和 Twisted 为 Asterisk IVR 实现开发 FastAgi 应用程序。到目前为止,应用程序在只有一个电话调用时运行得很好。 在建立第二个调用后,来自 Aste
我正在尝试创建一个 fastagi 服务器来执行一些 agi 脚本。我正在使用 pyst2 来设置快速敏捷服务器。运行fast agi server的脚本如下: #!/usr/bin/env pyth
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be
我是一名优秀的程序员,十分优秀!