0

我正在寻找减少 Asterisk,asteriskjava.jar 进程时间的方法!我正在研究基于 java、星号、mysql 的项目。在星号中,我可以添加最大站点总数,例如 90,900,9000(我设置了这些数字)。当任何 1 个站点第一次注册时编辑了 3 个文件 1. sip.conf 2. extensions.conf 3. queues.conf 在这些文件中的每个条目之后,我使用 asteriskjava.jar 的 ManagerConnection 的 sendAction 函数的“重新加载”命令。(我认为这在 9000 个电台注册时会出现问题。)

在 extensions.conf 中,我在下面放了一行 extenpatternmatchnew=yes (';' 不在此行的开头,所以我认为它有效。)

所以通过这条线,我可以得到 90 个站的结果 900 个站的时间需要 22.94 秒 9000 个站的时间需要 7.07 到 7.15 秒 9000 个站的时间超过 4 小时。我怎样才能减少这个时间?我在 How to create custom conf file for add stations in extensions.conf 中询问了与此相关的问题,星号? 但这不适用于第一次注册时的保存时间。如果只注册 9000 个电台需要这么多时间,那么如果我选择 1lacs 电台,那么我必须继续注册所有电台几天吗?注册后没有时间问题,每件事都按需要快速,但只有第一次在 3 个不同的 conf 文件中添加/注册。

我需要帮助。

谢谢arheops,我正在使用Asterisk 1.6.2.1。你写你不清楚我在做什么......我只是为n个站添加第一次拨号计划,所以之后所有人都可以轻松呼叫/寻呼/会议等。许多论坛提供解决方案减少“使用”拨号计划的时间在“添加”拨号计划后为 n 个站,但在为 n 个站准备拨号计划时如何减少时间消耗。

我正在使用java程序。在我的程序功能(用于将站点添加到星号)中,'for loop' 使用 & 每次从 asterisk-java-1.0.0.M3.jar 调用 UpdateConfigAction.java。在此 addCommand 函数调用。它将所有信息放在“操作”中,这些信息在 MANagerAction.java 文件中使用,这些文件在 ManagerConnection.java 文件的 sendAction 函数中进一步使用。通过这个活动 3 conf 文件编辑 & 解析 & 保存

  1. sip.conf
  2. 队列.conf
  3. extensions.conf

当我选择 100 个站点时,整个过程使用 26-30 秒。

当我选择 1000 个站点时,整个过程使用 7-8 分钟。

当我选择 10000 个站点时,整个过程使用 6.93 小时。

我观察到,当我控制台 asterisk -r 命令使用 for 来查看发生了什么

==解析'/etc/asterisk/sip.conf': ==找到

在这条线几秒后控制台停止

==保存 'etc/asterisk/sip.conf' : ==保存

出现。所以我认为在 sip.conf 中缺少一些我使用的设置,但我在 sip.conf 中保留了所有设置“默认”!

任何人都可以尝试告诉我我在哪里犯了错误,所以我的程序花费了这么多时间来在这 3 个 conf 文件中注册第一个时间站!我怎样才能减少这个时间?

4

1 回答 1

0

对于较大的安装,您可以使用星号实时架构(从 db 获取 sip 信息)。

http://www.voip-info.org/wiki/view/Asterisk+RealTime

无论如何,星号无法为 90.000.000 个用户提供服务。对于如此大的安装,您可以使用更强大的代理,例如 opensips/kamailio。

我不清楚你在做什么,但是拥有 2000 个站点的 freepbx 确实会在不到几分钟的时间内重新加载。所以也许你需要查阅 freepbx 代码(它是开源的)?

于 2013-03-20T13:56:06.980 回答