AWS is an amazing service, but they don’t give you much to work with in the way of cost reduction. This means that most early-stage startups are left with a big choice when it comes to hosting their websites:
either invest in a more expensive plan and hope for the best, or leave your website vulnerable to attack and risk losing your business. If you’re not sure how to manage your AWS hosting costs, see this article.
1. How much does AWS cost?
AWS is one of the most popular cloud hosting platforms in the world, and it’s used by a lot of startups to host their software. AWS charges users by the hour, so it’s important to know how much your business will use AWS and how much it will cost.When choosing a cloud, you have to consider your data center needs, estimated monthly usage, redundancy, availability zones, and the operating system for your instance
According to some of the most popular cloud hosting companies, the data center requirements for an AWS instance can be estimated by multiplying the following:
If your website is running on PHP, you’re probably going to need a bigger instance than hosting on EC2. To stay competitive, AWS offers a 64GB instance for $0.13/hour and 256GB for $0.25/hour. The cheapest instance that is available is an instance with 1GB of RAM for $0.45/hour
This price range is unbeatable for most entrepreneurs. Half of the market is heavily saturated and offers similar prices. Providing such a competitive pricing is part of the reason why AWS is so popular in startups’ home offices.
Another advantage is the architecture of the AWS instance. Lambda functions, which are a core feature of many AWS offerings, are executed on serverless instances. This makes it possible to avoid costly instances altogether and use cheaper solutions instead. However, even serverless instances may struggle to keep up with the demands of your website
By paying for larger instances, most businesses will choose to leverage services like CloudWatch or CloudWatch Guard, to monitor their cloud resources and respond to problems, if they happen. While this feature can be great, it is not worth the $10,000/month cost alone
2. How to manage your AWS hosting costs
Hosting costs can quickly add up, especially if you’re running a high-traffic site or have lots of storage. The best way to manage your hosting costs is to start with your monthly budget. Decide how much you’re willing to spend on hosting each month.Keep an accurate goal in mind; you don’t want to spend all your money on a single hosting account, which would turn your customers off. Analyze your current expenses and determine how much you think you’ll need to spend on hosting over the next four to six months. You can also consult a professional virtualization consultant to understand the technologies they use in their environment.
It’s especially crucial that you decide on-the-spot what kind of hosting you’ll need, and that you determine the optimum plan for your needs — especially if you’re launching a new product. AWS offers three types of service for you to choose from: pay-as-you-go, managed services, and infrastructure-as-a-service. Some hosting companies offer all three, depending on your geography To avoid any confusion, and because this article includes advice on virtualizing your website no matter what provider you choose, I’ll describe the different service tiers now, so you can make an educated decision.
With a basic plan, you get a simple web host with no limits, so you don’t get to decide if you have any limits. For most use cases, it’s enough. If your site gets popular, you may want to add a GZ server for additional speed, and one or two additional memory pages for further speedup.
The price of your basic plan depends on your geography:
The price of your basic plan depends on your number of simultaneous visitors:
Environment-as-a-Service (EaaS) is when you pay a monthly subscription for a variety of performance-optimized resources, such as machines, data centers, storage, and proxies. Many users like this option for their websites because it provides exactly what they need in a simple package
3. What you can do about the high cost of Amazon Web Services
AWS costs are going up this year. If you are using AWS, you can save money by following these steps: 1. Stop using Amazon S3 for static assets. 2. Stop using Amazon EC2 for your websites. 3. Stop using Amazon ElastiCache, RDS, etc. 4.Don’t throw away your ‘security’ concerns, and instead upgrade to a more secure, but more expensive service provider. 5. Use the web APIs. They allow you to access features that servers don’t. You will have less performance drops, but they will be far less frequent (and potentially much more serious) as well as you pay for the privilege. Moving to a web API will force you to update your code base on a regular basis, which costs money. Invest in those mechanisms that will “self-heal” (like a Cold Application Storage)
There are literally hundreds of hosting services that almost everyone uses and I haven’t bothered to do a deep analysis of how expensive each one really is. Did you know, for a long time, all iPods were sold in the US as “IPod” IIIs? The price represented the storage capacity in KB, and you get 500 songs for $1, or 1,000 songs for $10. In other words, for a long time the reason you could find really good deals was due to the scarcity of items. As a result, Apple has mastered a strategy whereby devices would be overpriced relative to each other, then YouPay would offer a lower price for the services. That way they make more money off of the service itself. However, with the shift to services like Lightsail and Softaculous, that strategy has changed. Now entrepreneurs can market the excellent pricing on their side without diluting the products of the players who are already making a ton of money off the old strategy
I haven’t done a deep analysis of price because the costs for packages are so different. I serve my personal node apps on Amazon Web Services, the cheapest that they have recently offered
4. How to move your site to another host
If you decide to move your site to another host, follow these steps: 1. Copy your database to the new host. 2. Change the database connection information in the app’s config file. 3. Make sure the app’s config settings are correct for the new host. 4. Restart the app. 5. Test the app. 6.Disconnect any external SDKs that weren’t used on the old host. 7. Check for any errors in your code!
You can share your Dockerfile with any other developer to work together. This is a handy alternative to building your app on your own. And should save you some time when you get to the difficult part of building your docker image.
Docker is a hugely popular platform by which people run their microservices in production. But before you start to deploy a service on Docker, you’ll want to familiarize yourself with how it works. I’ve written an article about containers, which is worth reading before getting into deploying anything on Docker.
To start a service on Docker, we have to create a container. Then we’ll get the service up and running, and let Docker clean up after us. During containers, we can’t use gunicorn or other orchestration tools to start a new service. Instead, we’ll need to interact with the container in order to set it up. This process essentially ensures that every service running inside of a container works together.
To create a standard Docker service, you fill in the following information in the “Dockerfile:” file. Take any time to follow along!
To start geth (an Ethereum node), in a terminal run this command in the root directory of your project.
This will run geth in the dev environment, receiving instructions in JSON-format from your mobile phone.
You should see something similar to the following when you run your service.
Your service should now be running, and the address of your service in the URL should be stored in the address bar of your mobile phone
5. Free alternatives to Amazon web hosting for startups and small businesses
One of the best ways to get your business online is to use free alternatives to Amazon cloud hosting. The downside of Amazon is that it’s more expensive than other options.Tempting, but also not realistic. The alternatives aren’t anywhere near as robust as the Amazon suite of cloud services, but they are definitely cheaper, often even free.
A perfect example is Namecheap, who offers hundreds of free hosting plans. One of the biggest take-aways from this roundup: compared to Amazon, Namecheap is serious about security and reliability.
I have many different hosting alternatives because Netflix landed on my door step when my pending S3 plan expired. Coincidence? I think not
when my pending S3 plan expired. Coincidence? I think not.
If you’ve heard of the large streaming companies before, their name is Netflix. Yes, Netflix is a huge web hosting and cloud services provider. But what I didn’t mention in that first sentence is that early on, Netflix wasn’t all that interested in the consumer side of their services, and they mostly hosted their web property on their own servers. A great example of this is their early support forums: remote first. After the launch and help of the community, Netflix learned that they were running the risk of losing paid subscribers — they could no longer— with more people learning about how to create their own Netflix programs elsewhere. So they switched gears and decided to sell access to their servers through their subscription model. This whole switch from an independent hosting company to a for-profit service is (partly) what got Kevin Collins and everyone at Netflix into so much trouble.
Back in the day, being ambitious meant thinking about the big picture and being open-minded about the solutions available. But being ambitious isn’t free, even when you’re a startup.
When we talked to Kevin about his Netflix academy program, he outlined what it was lacking:
Open and honest discussions about learning and creating awesome things with Netflix
Conclusion: AWS is a great service, but it’s expensive, and the only way for it to work for you is if you manage your costs and move quickly when things start getting expensive