Non-ASP.NET on the Cloud
We're investigating the cloud for a couple of solutions and for our core product. We're new to this area so would like to ask a question of your experience.
The various cloud services seem to be oriented around web applications. This is great, but our application is a web application fronting a .NET Windows Service/.EXE. Can we execute both within the cloud, or is it just for web apps?
Our application structure:
Web Browser -> WCF HTTP Service (IIS) -> TCP/IP Service (.NET Win .EXE/Service) -> SQL Server
Are we looking at a single cloud here, or if we go for Azure, 1 or 2 clouds for the app layers and a third for the SQL?
Also, how easy has it been in your experience to migrate existing applications?
Finally, any开发者_如何学C recommendations for starters? Azure is obviously on the list, have also heard good things of Rackspace/Mosso.
Cloud providers generally fall into one of 2 camps. They either manage the underlying OS for you (like Google App Engine or Windows Azure) or just give you a way to spin-up otherwise standard VM's (like EC2).
If you're looking to port an existing app that's not web-based, it'd be easiest to go the VM route. Otherwise, you'll have to research the cloud platform to see what services are available to you (hint: a standard Windows service would not be - but you may be able to architect around that with a web service depending on your needs).
Rackspace actually offers both a cloud platform (Cloud Sites) and a VM platform (Cloud Servers). I don't have experience with either, but have always been a fan of their hosting services.
First steps for you to move the cloud, IMHO, would be Cloud Servers or EC2. The magic keyword you're looking for is a root or administrator login (SSH or RDP) - that will tell you that you're dealing with a VM platform. If they require you to use an SDK, then you have a cloud platform.
If you are looking for a grid computing capable environment (it sounds like you may be) then you may want to look at Azure.
See below:
http://azuregrid.codeplex.com/
http://davidpallmann.blogspot.com/2009/04/grid-computing-on-azure-cloud-computing.html
I say this because as far as other providers are concerned, e.g. RackSpace, be careful. Some are 'cloud computing' in the sense that they are hosted and you can spin up additional machines on demand, but they are not forms of grid computing see http://www.ibm.com/developerworks/web/library/wa-cloudgrid/ for more info on grid computing vs. cloud).
Now, I should post a disclaimer here and mention that I have not yet developed on either platform. I have only spoken to reps from both companies during my initial discovery when I had the same line of questions and have done a little bit of reading.
If you would like more info on Azure specifically and how it may benefit you, check out this book:
http://www.amazon.com/Cloud-Computing-Windows-Platform-Programmer/dp/0470506385
Also check out:
http://itechthoughts.wordpress.com/category/cloud-computing/windows-azure/
and
http://mstecharchitect.blogspot.com/2009/01/hosting-wcf-service-on-windows-azure.html or http://www.dotnetspark.com/kb/1241-step-by-step-walkthrough-to-host-wcf-service.aspx
and
http://social.msdn.microsoft.com/Forums/en-US/windowsazure/thread/7b7b0128-7beb-457d-b601-5621ea3c3302
I'm sorry I can't be more fulfilling with this answer, I'm still reading/learning about Azure.
精彩评论