check out automatic locking in the c++ wrapper of spidermonkey, sorry I forgot the api names but they are fairly simple to find out. Then, your bottleneck isn't javascript anymore (unless somebody can prove me wrong! :) On Thu, Jul 1, 2010 at 7:47 PM, Anthony Minessale < anthony.minessale@gmail.com> wrote:
Can you have 1 context per thread the same way we do it now in the other languages? lua has a similar limitation but we just start a whole lua interpreter per thread/script.
On Thu, Jul 1, 2010 at 8:51 PM, Jan Berger <jan.berger@video24.no> wrote:
So in short – if a call executes a long script the other calls will be queued unable to process events – V8 is a joke as a scripting environment if you can’t create multiple environments.
I kind of see a poor IVR developer that accidentally made an ever loop and the entire companies phone system is down J
Obviously – I can get around it using several processes, but processes are bloody expensive on any OS.
---
Will have a chat with the Danes about this one – thanks.
Jan
------------------------------
*From:* Joegen E. Baclor [mailto:joegen@opensipstack.org] *Sent:* 2. juli 2010 03:27 *To:* Jan Berger *Cc:* freeswitch-dev@lists.freeswitch.org
*Subject:* Re: [Freeswitch-dev] TraceMonkey
For some reason, my email address is being blocked by the moderator so the list is not getting this mail. The problem with v8 threading is really simple.
1. Google V8 only allows one context to execute at a time. 2. If you are using multiple context design, they must be executed using exactly the same thread via a single event loop.
Failure to do this will result to a corrupt stack.
On 7/2/10 9:06 AM, Jan Berger wrote:
What exactly is the problem with threading? ------------------------------
*From:* Joegen E. Baclor [mailto:joegen@opensipstack.org<joegen@opensipstack.org>]
*Sent:* 2. juli 2010 02:40 *To:* freeswitch-dev@lists.freeswitch.org *Cc:* Jan Berger *Subject:* Re: [Freeswitch-dev] TraceMonkey
I have been using Google V8 for nearly a year now in one of our commercial SIP product offerings and it scales quite well. The only gotcha so far is that google V8 contexts do not go well with a multi threaded environment. That would force application design to always use async-IO. One good proof of this all async project is node.js.
I think it would also be a good idea to integrate this project into free-switch which would instantly give free-switch access to a vast number of JS API including sockets and HTTP client.
my 2 cents.
Joegen
On 7/2/10 7:24 AM, Jan Berger wrote:
I almost fell asleep when I reached the instruction to download Phython...
But, once you’ve done phyton + scons its basically just setting the correct parameters on scons from what I can see.
Looked a bit into Chrome source as well – considering nicking parts of it. CCXML/VXML is after all browsers.
---
Actually I did not realize that Google was building their own Inet-OS. What could be very cool was if we could get a Videophone running on Chrome to connect to FreeSWITCH – it will be plenty of iPad alike devices out running Chromium soon.
Jan
------------------------------
*From:* freeswitch-dev-bounces@lists.freeswitch.org [ mailto:freeswitch-dev-bounces@lists.freeswitch.org<freeswitch-dev-bounces@lists.freeswitch.org>] *On Behalf Of *Anthony Minessale *Sent:* 1. juli 2010 20:05 *To:* freeswitch-dev@lists.freeswitch.org *Subject:* Re: [Freeswitch-dev] TraceMonkey
it took me a while to figure out how to build v8 with 64 bit, and now i forgot again.
it uses scons to build and I wish i could remember because it took me an hour to figure it out.
lucky for us FS mods can be c++ so it would be plausible to make a mod_v8
On Thu, Jul 1, 2010 at 11:55 AM, Jan Berger <jan.berger@video24.no> wrote:
Yes – I am going to give V8 a try actually – this looks very promising. Got a bit lost in the jungle of all the monkey’s J
The compiler side of Tamarin is not ready yet + it’s also been complains that it’s slower than SpiderMonkey on the VM.
------------------------------
*From:* freeswitch-dev-bounces@lists.freeswitch.org [mailto: freeswitch-dev-bounces@lists.freeswitch.org] *On Behalf Of *Anthony Minessale *Sent:* 1. juli 2010 17:56
*To:* freeswitch-dev@lists.freeswitch.org
*Subject:* Re: [Freeswitch-dev] TraceMonkey
We've been waiting for a modern js engine to mature since shortly after we started FS.
V8 has promise as well. It's a matter of making sure there is a good choice before doing all the work of integration.
On Thu, Jul 1, 2010 at 3:56 AM, Jan Berger <jan.berger@video24.no> wrote:
https://wiki.mozilla.org/JaegerMonkey
Didn’t see this – might be an easier path to just wait for this to mature.
Jan
------------------------------
*From:* freeswitch-dev-bounces@lists.freeswitch.org [mailto: freeswitch-dev-bounces@lists.freeswitch.org] *On Behalf Of *Jan Berger *Sent:* 1. juli 2010 10:38
*To:* freeswitch-dev@lists.freeswitch.org
*Subject:* [Freeswitch-dev] TraceMonkey
Hi,
Was searching for updated JavaScript alternatives and found this Tamarin/TraceMonkey. Do anyone have experience with this version? They claim a 5-10 x speed increase compared to the older SpiderMonkey
“*Tamarin* is a JavaScript <https://developer.mozilla.org/en/JavaScript>engine written in C++. It currently implements Adobe ActionScript™ 3 (a superset of ECMAScript Edition 3) and is embedded within the Adobe® Flash® Player versions 9 and later. Tamarin's jit-compiler, NanoJIT, is also used in TraceMonkey <https://wiki.mozilla.org/JavaScript:TraceMonkey> ergo SpiderMonkey, which is Mozilla’s JavaScript engine in Firefox.”
https://developer.mozilla.org/en/Tamarin#Get_Involved!
Is anyone interested in having a mod_tracemonkey for FreeSWITCH – or is someone already working on this?
Jan
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
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> googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
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> googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
_______________________________________________
FreeSWITCH-dev mailing list
FreeSWITCH-dev@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
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> googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org