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.