I'm exploring the Azure platform, but I'm experiencing issues.
Actually, there's something I don't get...
I understand the difference between a web role and a worker role. But how to specifically create a web role for a Java app ?
Because when developping a java app for azure in eclipse, we have to copy/paste a java server (i picked up tomcat7) + jdk. I assume it's only to run the java app inside the emulator.
But, when deploying the app to azure as a webrole.....Does it upload only the war package + xml configuration files (cscfg and others) or does it also uploads the server and jdk ? I tried to build the project with "Cloud" parameter instead of "Emulator" parameter and it created a huge cspkg file of 150Mb... I seriously can't upload 150Mb each time I have to update the app...
Why don't just allow to upload a .war file ? And if we have to upload the server distribution, then how is the failover and session replication set up ??
I probably miss something...
Thanks for your answers
Edit :
Actually, from what I've read from the web, java applications are not natively handled by Azure, so you have to provide your own applications server (tomcat, glassfish etc..) inside the package, and the startup script will run the server with your app inside. You have to upload the jre + the server binaries + your application code everytime you want to redeploy a new package.
There's no built-in support for session replication or anything. If you want session to be "sharable" across multiples instances, you have to use the Table Storage service to store session infos.
Note : With eclipse, the lastest plugin allows you to set sticky session, but I don't know anything more about it
Hence, a java app is not deployed as a webrole but as a worker role where you add your own server.
Webroles are only for .NET and PHP applications.
Correct me if I'm wrong.