Using Cloud Computing to Reduce the Costs of a Start-up
We recently started working with a new customer, a start-up based in Florida, that already had many servers in place to support its user base and was looking for alternatives to improve their services. Our client now has a much more stable, flexible and dynamic infrastructure to rely on and, at the same time, with significantly reduced costs (around 42% of cost reduction).
When people think about start-ups usually concepts like flexibility, growth and budget constrains may cross the mind. For a company to achieve these goals, the infrastructure in which its product is built should also reflect these properties. In these cases, the cloud computing comes in handy.
When starting a new engagement at e-Core we take our time to analyze our customer’s requirements to assess if a cloud computing approach would be suitable. A huge advantage of this approach is usually the associated cost reduction as in most cases you pay as you consume through business models such as Infrastructure as a service (IaaS), Platform as a service (PaaS), Software as a service (SaaS), etc.. You can start with a platform and one small server and, as your user base and demand grows, you can either scale vertically (improving the server) or scale horizontally (allocating more servers).
We recently started working with a new customer, a start-up based in Florida, that already had many servers in place to support its user base and was looking for alternatives to improve their services.
e-Core consultants worked collaboratively with the customer to provide valuable insights about the current system and expected requirements. The server structure was originally designed considering a future growth and although it allowed some space for an increasing demand, during normal usage the servers were actually being underutilized. On top of that the overall costs to maintain the servers up and running were high due to the need to hire and train people with some skills that were not directly related to the core business of the company.
e-Core needed to help the client to:
- Reduce the infrastructure costs
- Optimize the use of resources
- Reduce the overall operation costs
- Improve the service availability/scalability
- Improve the disaster recovery ability
e-Core came up with a plan to reduce the overall server costs without causing impacts to the availability and the performance of the products. Our consultants evaluated the existing possibilities and concluded that Amazon Web Services (AWS) was the best choice as it provides, through a single platform, services like ElasticCache (memcached service), load balance and CDN capabilities, which eliminate/reduce the some of the operational costs to maintain these services. We moved the entire production and lower environments to the cloud reducing drastically the costs involved in keeping the servers up and running as well as increasing the system availability.
By using AWS services such as Elastic Cache we increased the application performance and didn’t overhead the application support team with complex setup as the services are simple to create and to configure. Another benefit was the possibility of reducing the number of servers allocated per lower-environment (development, quality-assurance and staging). From the four original servers our consultants defined that we could successfully run each environment in two (one subsystem required a Linux environment while others required Windows) making use of virtual machines defined according to our system’s requirement.
While testing and migrating the infrastructure new features of the product were being developed by our team in Brazil, allowing us to make performance improvements to the products in a way that the process of restructuring the servers was completely transparent to end users. Our client has worked together with e-Core during this process and as we had an open and constant communication in place we were able to make it happen without issues.
Our client now has a much more stable, flexible and dynamic infrastructure to rely on and, at the same time, with significantly reduced costs (around 42% of cost reduction). Among the benefits of this approach we could note:
- Single and reliable platform for managing multiple services
- Easy to setup Windows or Linux snapshots as well as to configure virtual networks interconnecting them
- Able to have pre-configured instances which would speed up the process to add more servers (scale horizontally)
- The ability to turn on/off different services or resources according to the demand (scale vertically)
- Amazon Elastic Load Balancing to load balance traffic on web servers (http://aws.amazon.com/elasticloadbalancing/) with the ability to auto-scale as traffic levels get higher.
- Amazon S3 buckets as storage for user content files (http://aws.amazon.com/s3/)
- On top of S3 buckets have Amazon Cloud Front service to improve static and user content deliver (http://aws.amazon.com/cloudfront/)
- Amazon Elastic Cache for in-memory cache to improve scalability of the application (http://aws.amazon.com/elasticache/)
- Reasonable maintenance costs