2014-09-30 120 views
0

我正在运行使用Asterisk服务器的mVoIP应用程序。目前,我有超过100万注册用户。 SIP注册在第一时间完全正常,但最近缓慢。在Asterisk服务器上注册需要3到5秒钟的时间。星号SIP注册较慢

Asterisk服务器将用户信息保存在服务器内存中,并且我在MySQL数据库中进行了索引。以下是SIP用户信息示例。你能看到为什么SIP注册很慢吗?谢谢。

* Name  : 1000 
    Description : 
    Realtime peer: Yes, cached 
    Secret  : <Set> 
    MD5Secret : <Not set> 
    Remote Secret: <Not set> 
    Context  : from-sip 
    Record On feature : automon 
    Record Off feature : automon 
    Subscr.Cont. : <Not set> 
    Language  : 
    Tonezone  : <Not set> 
    AMA flags : Unknown 
    Transfer mode: open 
    CallingPres : Presentation Allowed, Not Screened 
    Callgroup : 
    Pickupgroup : 
    Named Callgr : 
    Nam. Pickupgr: 
    MOH Suggest : 
    Mailbox  : 
    VM Extension : asterisk 
    LastMsgsSent : 0/0 
    Call limit : 0 
    Max forwards : 0 
    Dynamic  : Yes 
    Callerid  : "" <> 
    MaxCallBR : 384 kbps 
    Expire  : 3212 
    Insecure  : no 
    Force rport : Yes 
    Symmetric RTP: No 
    ACL   : No 
    DirectMedACL : No 
    T.38 support : No 
    T.38 EC mode : Unknown 
    T.38 MaxDtgrm: -1 
    DirectMedia : No 
    PromiscRedir : No 
    User=Phone : No 
    Video Support: No 
    Text Support : No 
    Ign SDP ver : No 
    Trust RPID : No 
    Send RPID : No 
    TrustIDOutbnd: Legacy 
    Subscriptions: Yes 
    Overlap dial : Yes 
    DTMFmode  : rfc2833 
    Timer T1  : 500 
    Timer B  : 32000 
    ToHost  : 
    Addr->IP  : 118.131.206.XXX:58390 
    Defaddr->IP : (null) 
    Prim.Transp. : UDP 
    Allowed.Trsp : UDP 
    Def. Username: 1000 
    SIP Options : (none) 
    Codecs  : (ulaw|alaw|opus) 
    Codec Order : (opus:20,ulaw:20,alaw:20) 
    Auto-Framing : No 
    Status  : Unmonitored 
    Useragent : LinphoneAndroid/2.3.2 (belle-sip/1.3.2) 
    Reg. Contact : sip:[email protected]:58390 
    Qualify Freq : 60000 ms 
    Keepalive : 0 ms 
    Sess-Timers : Accept 
    Sess-Refresh : uas 
    Sess-Expires : 1800 secs 
    Min-Sess  : 90 secs 
    RTP Engine : asterisk 
    Parkinglot : 
    Use Reason : No 
    Encryption : No 
+0

我认为这不是一个编程问题。也许你应该问在http://serverfault.com? – 2014-09-30 12:48:55

回答

0

Asterisk被设计成小型办公室PBX。

它从来没有说明服务100万注册。

星号本身没有什么改变,但你可以检查其他项目,旨在处理你的大小/问题。

他们是OpenSER的家庭(opensips.org/kamailio.org),OpenSBC等

opensips或kamailio大概可以处理1mln用户(每秒几万要求)没有任何问题。

而且现在是时候考虑一​​下故障切换和灾难恢复,负载平衡astdb等

0

星号店注册。为了实现这一点,使用sqlite而不是berkeley db来迁移较新的版本,这可能会或可能不会提高性能。 https://wiki.asterisk.org/wiki/display/AST/SQLite3+astdb+back-end

此外,如果您选择使用实时s​​ip(动态版本),则可以使用任何数据库后端来存储注册信息。但是这个选项很可能与mVoIP不兼容,我不太熟悉。

我完全同意:

Asterisk是设计为小型办公PBX。