Best programming language for a big Asterisk project

I am working on an Asterisk project that will require very big processing and data access capabilities (long term: hundreds of simultaneous calls; databases of millions of records), and needs to be optimized for speed and memory utilization. Until now, I have done the preliminary development (mainly for learning and prototyping purposes) on java. I now need to move to actual development and need some advice on the choice of programming language. On a second note, if could advice on an IDE also, that would be great!

Here are my constraints:

[ul]
[li]There will be very big volumes of processing and data access (using a mysql database). Speed is key as the system will be handling hundreds of simultaneous calls with humans that need to get no latency;[/li]
[li]Asterisk is central to the architecture of the project. While Asterisk AGI is available in many languages, some are probably more optimal than others;[/li]
[li]I might need at some point of time to work on the source code of Asterisk, to create some features that are not available right now, and I know that Asterisk is written in C/C++;[/li]
[li]The applications will run in our own servers, so we can have good control on the environment (portability is not critical);[/li]
[li]At some point of time, we will develop mobile / web applications that will need to interact with the main telephony applications.[/li][/ul]
Thanks for the advice.

Hey obk,

Think this really depends on what language works best for your development environment. If you are using Java already for prototyping, I don’t see any reasons to stop using it.

Remember that asterisk is still going to be doing all the heavy lifting, so whatever programming language you use will only be accessed through the AGI and likely will not have all that much processing to do. To give you an idea I built a system that runs uses PHP (not that fastest language), and it manages hundreds of simultaneous calls really well, because all PHP has to do is some basic data access/ simple logic.

Bottom line IMO - whatever you know and can get working the fastest.

PS. For IDE, you got to go VIM.