8 ms·
The reason I use AWS is because I can be fairly certain, that their uptime is quite high (not 100%, but it's more than I can probably guarantee if I were to run
by kugelblitz 7y ago
The reason I use AWS is because I can be fairly certain, that their uptime is quite high (not 100%, but it's more than I can probably guarantee if I were to run on an own server), that their eco-system is huge and they connect to each other.
Being a "solo hacker" developing multiple websites, I need to prioritize where I put my time in. Thus my "default" choice is using Elastic Beanstalk to deploy websites, be it PHP, Python or something else. I can easily add environment variables, let it connect to RDS (database), scale it up (more servers or bigger servers), I can add SSL certificates, I can add a CDN (Cloudfront), I can add separate data storage (S3) all with a few clicks and from one (albeit super-huge and need-to-get-used-to) dashboard.
Alternatives: I don't trust Google services for anything critical (they tend to shut down easily or they might just change their pricing drastically - e.g. in Google Maps), Azure might be an alternative, just never had the time to check it out intensively.
For "fixed ceiling" projects, I use Digital Ocean (because unfortunately AWS mostly doesn't offer a budget ceiling, just alarms).
- anaganisk 7y agoCheckout Lightsail, been using it past 6 months. Power and freedom of digital ocean in AWS ecosystem.
- kugelblitz 7y agoThanks! I had taken a look when it first launched, but haven't looked at it since. Will try it out for the next (low-risk) project.
- maest 7y agoAnd none of the cost control.
- pixelperfect 7y agoLooks like you get charged if you go over the transfer allowance. Is there a way to automatically shut everything down to prevent that from happening? I like to go months without thinking about my server, knowing there's no way for a bot army to come around and ramp up my charges. I realize that's paranoid, but Amazon's competitors give me that option.
- donarb 7y agoThe other cool thing about Lightsail is that you can upgrade to EC2 should you need to go to the next level. I assume that the Lightsail instances are really some sort of EC2 instance that has a user friendly wrapper around it.
- jacurtis 7y agoTo be clear, Lightsail is only "sorta" in the AWS ecosystem. It is in the ecosystem in the sense that it ultimate boots up an EC2 instance. It is essentially a simplified skin on top of EC2 where AWS makes most of the decisions for you in regards to server setup, with simplified pricing. And it shows up as AWS on your bill, and can be billed along side other AWS services you use. However, it isn't really in the ecosystem as I would argue. You can't connect it to networks and subnets you create. You don't have control over availability zones, so essentially everything (like talking to S3) is considered egress traffic. It is like a sandboxed AWS service, that sits out there on its own. It really isn't any different than using Linode or Digitial Ocean for your compute resource and using AWS for block storage, queuing, DNS, etc.. Other AWS services can't "see" your Lightsail instance, like they can see your EC2 instances. You can't connect EBS volumes to it, you can't take advantage of elastic IPs, or anything of that sort. It really is a separate service that sits on its' own, under the comfort of the AWS name. If I remember right, even tags don't carry over between Lightsail and the rest of your AWS account. Again, Lightsail is fine as a service, but it is only "sort of" in the AWS ecosystem. It mostly sits on its own as an isolated service, backed by AWS.
- Roark66 7y agoI mostly work in AWS. I was recently creating an environment and a deployment mechanism for a fairly simple app that was initially developed in Azure. The client was surprised because the cost estimates previous devs gave him (based on Azure) were a lot lower. I don't know what their Azure architecture was - I had to come up with AWS stuff from scratch. Maybe they omitted certain things like backup, DR, auto scaling etc from their initial estimate or maybe it is worth looking at Azure. It is not the first time I'm hearing something along the lines of "Azure is cheaper".
- halbritt 7y agoI frequently see folks assert cloud vendor X is cheaper and present data comparing long-term reserved instances to on-demand.
- mattmanser 7y agoI've used various hosts over the last 15 years in the UK and I honestly can't remember any downtime from anyone else. I do remember lots of AWS + Azure downtime though. Remember Netflix going down? I'm not really sure where you're coming from. As someone who's been doing this for years, the old days when you had a £10 virtual machine that could handle tens of concurrent requests don't seem to be handled by the low price AWS/Azure servers. Let's not forget, tens of concurrent requests is 100,000s of monthly users, a major win for most startups. And even the expensive cloud options are utterly rubbish compared to what you can get for a bare metal, I like to compare the two as you can get a Ferrari for £1000 a year, or you can get a bicycle for £1000 but don't worry, it's a "cloud" bicycle so definitely go with that. I am constantly having problems with an Azure app at the moment timing out because of some poorly optimized queries that are being throttled because they somehow exceed the ever mysterious DTU. On my laptop, a 5 year old laptop, the queries take 10ms. So it's is impossible to run on Azure because "reasons" unless I pay a ridiculous amount of money to upgrade the SQL server. Yes, I could fix the query, but why should I be spending time on that? They're part of the admin system and are simple reports. Another app I worked on we ended up having to pay £1000 a year just so we could have multiple-domains + SSL, when we expecting to pay £80 p/y. Personally, every time I use cloud servers I regret it. I keep trying or clients really want it, and can understand the lower devops cost and that with bare metal, every 5-10 years I need to migrate the app to get a better server, but I honestly find the cloud servers so completely underpowered for the cost. I don't understand how they've got so popular. Basic devops for most startups is a day or two task once every few years. Write a deploy script, backup script once, and almost forget about it. (I absolutely love s3 though for backups though)
- dgemm 7y agoIf you can run your app on a £10 VPS then you are not the target market for the big clouds. That's why it doesn't make sense for you. Larger users have very different priorities.
- mattmanser 7y agoThis really isn't true. People use them for everything. Tiny little enterprise apps with 10s of users. Startups with mere 1,000s of uniques per month. Side projects. Everything. If you look at Microsoft's strategy with C#/Azure you'll see that every single tutorial uses deploying on Azure. Their instructions for how to deploy to a real server in their tutorial is pretty much "we're not telling you, figure it out yourself, sucker". Their new business strategy is to get the entire of their userbase paying massively over the odds for hosting small apps. And, in reality, almost every app by any startup you could go and look at on producthunt (and probably most of ycombinator startups) have such low volumes of usage they could run on a $5 VPS. But I bet all of them are on AWS (there's even a few comments on this thread that basically say "start on AWS, then move"). Everyone is using cloud now, go to any meetup and ask. Or simply look at the sales figures.
- halbritt 7y ago> Alternatives: I don't trust Google services for anything critical In the case of GCP, the product is the product rather than the user, so there's a greater expectation that it'll not get shut down or that pricing will change easily. Further, they're obviously committed to being competitive with AWS which requires that they behave similarly.
- scarface74 7y agoOn the other hand.... see maps.
- halbritt 7y agoOn the other hand of what? Maps is a consumer facing service for which revenue is derived from the data collected and advertising. That business model is nothing like selling commodity compute services to enterprises. If anything, I think GSuite is a portent of how Google will treat GCP. That is, the set of products has been relatively and consistently stable for quite some time, which has driven fairly decent adoption into the enterprise market. There've a couple of product shifts, specifically around voice, hangout, and chat, but that seems to settled at this point. I speculate that the changes that have raised the most ire have been around gmail, which I suspect has a fragmented product management team as it's both a free consumer service getting monetized through ad revenue as well as an enterprise product sold directly to customers.
- scarface74 7y agoMaps is a consumer facing service for which revenue is derived from the data collected and advertising. That business model is nothing like selling commodity compute services to enterprises. So selling access to an API that businesses depend on is nothing like selling access to other resources that businesses depend on? https://gadgets.ndtv.com/apps/features/google-maps-apis-new-pricing-impact-1907242 https://gadgets.ndtv.com/apps/features/google-maps-apis-new-... Prices have gone up as much as 14 times in certain scenarios
- 7y ago
- the_gipsy 7y agoHow does your development cycle look like? For example, you decide you want to add S3 or Redis. So you add it to some yaml, or do it in the amazon console. How do you develop/test/debug the code that would use these services, locally, before pushing that to production?
- kugelblitz 7y agoI try to abstract something like the filesystem. So I would use something like Flysystem for PHP, or pyfilesystem for Python where an environment variable would decide whether it's saved to local disk or S3. For some more difficult use cases I have to be pragmatic and decide on the circumstances. E.g. when needing presigned URLs (which is an S3 feature) I will use the native S3 SDK, it's not the cleanest way, but it gets the job done. Only when it starts getting annoying / slowing the development speed will I abstract it away. Security is important and I keep a high standard there, but when it comes to clean abstraction I will occasionally make compromises, knowing that often we will only need one implementation or that feature might be thrown away (I work freelance mostly with startups or SMEs).
- the_gipsy 7y agoThank you. BTW I agree with starting simple and only abstracting if necessary.
- potta_coffee 7y agoAmazon recommends "testing at scale", basically spin up a non-production version of your architecture and try it out.