At Degree 53 we’re used to working with our clients’ existing infrastructure. For one particular client, this requires close co-operation between at least three different technical departments (not to mention some eye watering costs). That’s why on a recent project we suggested taking some time out to investigate whether just adding hardware to our client’s existing infrastructure was the best approach (with all the costs involved in that) or whether there was an opportunity to use the Cloud.
Well, Cloud computing won hands down, we found it was cost effective, the server activated promptly and we were able to deliver successfully within time and well within budget.
So Why Cloud Computing?
As a start-up we needed to have our own infrastructure on day 1, so that we could deliver projects and cater for our own needs (many and various). We settled on Microsoft Azure after looking at AWS and Rackspace. We had no problems with any of them, Amazon had some interesting technical workshops going on (complete with free beer and pizza), a Rackspace trial we did was successful but, at heart, we are a Microsoft shop, so we chose Azure. We’re now running several test web sites, we have a few test Virtual Machines (VMs), we send emails, and we do demos to clients all from Azure and with no issue. The integration with Visual Studio is nice, one-click deployment of a web site is a very nice feature we use a lot.
Flexibility and Scalability
Now we’re up and running with many projects live and in test we’re hitting Azure harder and harder. From a middleware perspective we need a platform we can rely on. We need load balancing so we can cope with load. A nice feature of Azure is Auto-Scale, we create a load-balanced set of servers and then turn some off. If the active servers encounter high loads then the reserve servers automatically come on-line and balance the load better. The best thing is that we don’t pay for the reserve servers while they are inactive! This is a great feature for our sports apps that get pounded at irregular intervals depending on the sports calendar.
We’ve productised our middleware so we can deliver back-end projects with minimum fuss. This means that our VM’s have a standard installation of our Feed Management System and we write the least (c#) code possible to do the particular job. Now our mobile app developers can get started as early as possible.
Azure offers an add-on MySQL service which we are currently evaluating, that’s a nice thing for customers who are more used to open source frameworks. It’s attractive because it’s clustered. We don’t want to risk a popular mobile app just because we have a server down. If you have an app that needs to be live 24-7 you can handle this better with cloud computing.
Content Licensing Issues
One problem we have encountered was a geo-location issue as the IP address assigned to one of our VM’s looked like the VM was in Brazil and this gave us licensing problems. Microsoft helped us with the issue but we moved the VMs to Rackspace in the interim, which resolved it for us. This is a competitive market where the customer is king.
Nowadays, we have multiple accounts for multiple installations servicing many mobile apps so we are looking at ways to organise and to support our customers’ applications. We are developing monitoring software that will sit on each cloud server and keep track of the running software. We’ll have an HTML5 mobile phone app that our support staff can use to diagnose and fix problems as they occur. We’re looking forward to using the new(ish) Azure organisational accounts will help us to manage our customer requirements in a more effective way.
The cloud is a great tool for us. It’s a playground for our middleware guys to deliver fantastic services to mobile apps and responsive web sites. We can aggregate data from multiple sources to deliver extra value to service clients, we can perform calculations that would be impossible on a mobile device and we can deliver data direct from the enterprise out to mobile devices with industry standard security.