Asterisk mantiene en memoria una lista (enlazada) de los peers conocidos. Hay un thread que ejecuta la función do_monitor(), y que, entre otras cosas, comprueba periódicamente si esos peers tienen mensajes de voz. Si la información cambia de una iteración a otra, envía un NOTIFY (Event: message-summary) con el dato.
Cada iteración comprueba un peer. No se cuántas iteraciones por segundo hace ese bucle for, pero si tenemos 10.000 peers en memoria, a 25 peers/sec (por poner un número), da una latencia en la comprobación de 400 segundos. De cualquier modo, esta comprobación se hace principalmente buscando modificaciones externas del buzón. Cuando alguien, usando la aplicación Voicemail, te deja un mensaje de voz, o borras algún mensaje desde VoicemailMain, se notifica inmediatamente.
Así que, sin poner datos empíricos sobre la mesa, yo apostaría a que se puede gestionar sin apuros ese volumen de buzones de correo.
Julián J. Menéndez
On Jan 2, 2008 6:22 PM, Saúl Ibarra saghul@gmail.com wrote:
[snip]
Lo malo es: si efectivamente logro que "sip show peers" muestre TODOS los usuarios, esa información está cacheada en Asterisk, en memoria. Si son mucho usuarios... ¿no podría ser un problema?
Sospecho que podría haber algún problema, aunque es solo un suposición, pero igual no aguanta 10000 usuarios, así que yo me plantearía la posibilidad de poner varios asterisk para ello... IMHO :)