mod_mono is actually on it's way back to resurrection so stay tuned. Just a warning , don't speculate too much on how much overhead various things have, actually lab it up and find out. =D On Fri, Jun 6, 2008 at 3:21 AM, Albano Daniele Salvatore - Personale < d.albano@gmail.com> wrote:
This is sure, it should be a lot faster but a programming language would give a lot of flexibility.
Personally i'd like a lot .net/mono (i'm not a microsoft fun but .net, in the lastest releases, is a good thing) because you can really use any language you want (python => ironpython, ruby => ironruby, java => ikvm, php => phalanger, perl => perlnet and so on) on what so you want (look at mono, in this case System.Windows.Forms isin't necessary)
Naturally nothing works at 100%, but with little modifications you can avoid problems so instead to study another language you can use one existent that has some additions so if you want you can use .net stuff too and it's is sufficently fast (look at language shootout, it's, on mono, is only slower 2.6x times than c++ tests compiled with intel compiler ... but .net on windows is faster)
Naturally these tests are only indicatives, because there are a lot of stuff that come in play, but let to get an overwiew of the situation.
Some time ago i started to take a look to mod_mono, but i was full of work so i didn't started to work on it
In this way you can from the webpanel ,written in every language you like, update the database and, using mod_mono, builds configuration files really fastly removing the overhead of a request to a webserver (process spawn, if max clients has been hit, interpter start and so on)
Would be wonderful if trixswitch will not use xml_curl to build xml files but generates it internally using an application written in lua or javascript (javascript is slow, but probably is faster than: xml request build, http request built, http request exceution, possible webserver processes spawn, initialization of the server side language, execution of the requested page and so on)
Faraz R. Khan ha scritto:
My initial idea was to use mod_xml_ldap to generate XML from ldap- the panel can control LDAP very efficiently.
According to what I have read and saw on this list- this is currently possible. I would imagine that ldap would be far faster than any language with a mysql backend.
Albano Daniele Salvatore - Personale wrote:
The main problem there is that FreeSwitch can work using xml supplied by a webpage (xml_curl application): this mean that php must supply the XML (from a cache or generated on the fly)
The problem is that under an heavy load php isin't a good thing because it eat a lot of resources and kill the cpu even using accelerators like eaccelerator or apc: these, infact, have a cache for compiled php (php before begin executed is compiled for the zend engine) but these doesn't have a fully function code path optimizer that speed up all the process. Another big problem is that PHP doesn't use JIT so a lot of resources are used to interpretate the bytecode
The engines behind java, .net and so on have a jit engine so these can really be near to native execution speed (as native i mean c++ because these languages are OO so a lot of work is done and a lot of checks are executed)
Eventually, as i said before, a good option would be to use a webserver (or a module for the currently used webserver) that use softwares like memcache to serve pages: doing this you can generate the xml and put there using the same names used by the webserver. Naturally you can't do this in all situations because you can need dynamic configurations but can be a partial solution.
OT: It would be fantastic if spidermonkey will be replaced by tamarin (if this will become truly stable [i mean no api change])
Faraz R. Khan ha scritto:
We have a control panel coming up which amongst many other things also manages Asterisk. This would be released as Opensource. It has a PHP front with a Python Agent (for doing sysadmin work). Its plugin based and we would be happy to write a plugin for FS/TrixSwitch in the next coming months!
Albano Daniele Salvatore - Personale wrote:
A couple of suggestions: - take a look to nginx, it's really fast and for a fast switch there is need for a fast data backend (it serves data) - dosen't use php (i love php, but it is slow ... a lot slow even using apc, eaccelerator or similar!)
Memcached (or similar like sharedance) would be really useful to serve pre generated XML.
It would be really nice if the WUI (Web UI) would be written using Mono or Python
these are just my two cents :)
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE: http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE: http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:213-799-1400