We are considering Matlab for an analytics application (an Optimization engine), which is mostly composed of a bunch of vector calculations , and is cpu intensive . Since the computations can take even minutes to complete , we use parallel toolbox for utilizing multiple cores of the cpu. We are considering DCS to extend that to a cluster to speed up things further. The user facing application is a website (.NET/IIS mostly), and may need to launch realtime requests as well . Has anyone used Matlab in a similar setup ? Can anyone share their experience ?
Im looking for remarks mostly along the following lines :
1) Ease of deploying
2) Distributed Computing Server (DCS) : Is it easy to setup ? What about Load balancing / failure recovery etc ? Is it a scalable / feasible solution , given its licensing restrictions wrt. number of nodes etc ?
3) How well does it play for a Cloud deployment (like Amazon) ? Auto scaling ? Is it easy to spin up new servers with Matlab runtime / DCS worker nodes ? Is the setup process completely automatable (with chef for example) ?
4) Does the licensing restrictions cause any issues for deployment / scaling ?
5) Parallel Pool : Does it have any peculiar issues w.r.t to users / admin rights etc ?
6) Matlab Compiler : We use it to create dlls to integrate with the .NET website .
7) Does it work well in a hosted environment (like the compiled dll hosted under an IIS website )
Some of these questions may seem basic , but we are pretty much new to Matlab , and are evaluating other options like Python with Numpy/Scipy as well . Any help is much appreciated .