Why would a webapp need a server online for only a few hours? [closed] - amazon-s3

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
EC2, RDS charge by the number of hours online, but who would actually benefit from this kind of tariff? Why would a webapp need a server online for only a few hours a day/week/etc.?

The hourly tariffs have many use cases. A big one is scientific research: Astrophysics, Theoretical Computer Science and Mathematics etc. Traditionally universities would have to pay huge amounts of money for computing clusters to be purchased and installed on-site even though they spend most of their time idle and a small amount of time actually processing data.
With the advent of cloud computing, researchers can launch a huge server cluster and have it crunch over data for a few hours or days, get the results and then terminate the cluster. See amazon's high performance computing page for more details. You can also read case studies on how NASA's jet propulsion Lab and European space agency make use of flexible tarriff cloud compute clusters on EC2 for processing their data.
Another use case is for auto-scaling. Amazon's Autoscaling feature allows a load balanced EC2 cluster to be scaled up and down with demand. During heavy load additional servers will be launched and added to the cluster, when load drops again they will be removed. Therefore companies can have massive scalability and only pay for the additional capacity if/when the demand on their web site requires it.

One of the main benefits of cloud deployment is scalability.
For example, if you had an application that served the UK retail industry you might find that your peak usage occurs between 7-9am, 12-2pm and 5-8pm, when your audience are awake/not working.
You may have multiple servers employed during these peak times but only one through the night when traffic is low.
Hourly charging allows for this scalability.

Related

Value of In-Memory DB for a use case without hot partition problem [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed last month.
Improve this question
While DynamoDB has millisecond latency (6ms ~ 10ms if partition scheme is designed properly), and In-memory DB will offer microsecond latency. Essentially moving to in-memory DB would remove 10ms from our overall latency.
If network + compute latency is 30ms, and DB fetch is 10ms, total of 40ms, how much value does in-memory DB bring if the overall latency goes from 40ms to 30ms for a service that needs to be as low latency as possible?
From my research in-memory is best used when there is a large read requests on a single partition key in order to solve hot-partition problems. We will have large number of read requests, but if we don't have a hot partition problem and requests will be distributed evenly throughout different partition keys, does an in-memory DB not bring that much value other than the 10ms savings in latency?
Thanks
Like you state, in memory databases are best when massive amounts of reads are pointed to a single partition or key. DynamoDB would limit strongly consistent reads to 3000 per second.
If you can tolerate the small latency increase a database like DynamoDB would be much more beneficial, being serverless and HTTP based means it's really easy to develop with.

SQL Cloud, when to use it? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I'm comparing the cost of services like google cloud SQL to launching your own VM in the cloud with whatever sql version you'd like.
VM instance only vs Cloud SQL only
I'm quite surprised by the results I got. The cloud SQL, is more than twice the price for the same underlying system (8 vCPU, 52 Go RAM, 2 To storage)
So basically, you pay more to have less. And I was expecting the contrary...
Granted, you don't have to deal with maintenance and automating backup yourself, but I found the price difference ridicule.
So my question is : when should I consider using Cloud SQL instead of running my own specialized VM ?
Right now, I feel like this service is just a fancy way to milk money from the client.
Note : I took the google Cloud example, but this is the same result with other cloud providers.
The tl;dr answer here is that a VM is very different than a fully-managed service. It's like comparing apples and oranges, honestly.
When you create a VM, you have a VM. You can do whatever you want with it, but it's just a VM. That VM may be subject to restarts, must be totally configured by you in many cases, is not redundant, has no (added) security layer, etc.
As a managed service, Cloud SQL (and other managed services) offer many things way beyond what you can do on just a VM. You mention a fraction of them, such as backups. With a managed service you're getting a ton of other things which really matter to most people, such as:
Updates, upgrades
Better performance (in your example the IOPS of PD and Cloud SQL do not match)
Support for the service
Added security
An IAM layer
Integrations with other services
No need to "build it yourself"
etc...
While a (very) small minority of people may want to roll their own, it's generally a waste of time and a heck of a lot riskier than using a managed service. I think if you asked most any business customer, the cost of a managed service pales in comparison to paying a fleet of people to replicate the benefits you get from one.
This is true for GCP, AWS, and Azure.

Amazon SQS or CloudAmqp or RabbitMq setup on EC2 [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
We have to implement a queuing system for our ROR Application.We have evaluated the following options:
Amazon SQS: High Availability but relatively slow performance.Requires constant poling.
CloudAmqp: Looks promising but doubtful about the support.
RabbitMq setup on EC2: Needs user bandwidth to manage the setup,may result in downtime if some issue arises in the setup.
Right now there won't be any dedicated team/person to manage the setup full-time so implementing our own RabbitMq setup on Ec2 may result in downtime in case something goes wrong.
I want to know considering the situation which is our best option?
I use SQS and I am happy with it; I don't worry about the support aspect, because I also don't have time to deal with setting up my own server and supporting myself when I can pay AWS pennies to do it for me.
If you don't want to poll constantly, considering pairing up your SQS queue with an SNS topic and it can do push notifications to your application instead. Don't know the nature of your application, but its something to look into. http://aws.amazon.com/sns/
ALso keep in mind the slow performance of SQS (relative to Rabbit) is not apples to apples. SQS is redundant and distributed, a single instance of RabbitMQ on a single box is not; can your application deal with the queue not being available for a period of time?
At CloudAMQP all our servers are redundant, each cluster has at least two instances in different availability zones. For support we have email support 24/7, as we have staff in different timezones. We do have phone support for our largest plans too.

Amazon S3 & CloudFront high costs [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
We're uploading and serving/streaming media (pics,videos) using amazon s3 for storage combined with cloudfront for serving media. The site is used slightly but the Amazon costs come to 3000 $ per month and from the report 90% of the costs originate from the S3 service .
Heard that cloud can be expensive if you don't code the right way ..now my questions :
What is the right way ? and where should I pay more attention, to the way I upload files or to the way I serve them?
Has anyone else had to deal with unexpected high costs , if yes what was the cause?
We have almost similar model. We stream (rtmp ) from S3 and cloudfront. We do have 1000s of files and decent load, but our monthly bill for s3 is around 50$ ( negligible as compared to your figure). Firstly , you should complain about your charges to the technical support of AWS. They always give you a good response and also suggest better ways to utilize resources. Secondly , I think if you do live streaming, where you divide the file into chucks and stream them one by one, instead of streaming or downloading the whole file, it might be effective , in terms of i/o where users are not watching the whole video, but just the part of it. Also, you can try to utilize caching eat application level.
Another opportunity to get better picture on what's going on in your buckets: Qloudstat

What are some big sites that are using Amazon EC2 [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I'm looking for examples of large websites that are hosted on Amazon EC2/S3/Cloudfront/etc.
I worked at a company where we ran a site that did 500k unique visitors per month on EC2 running 10 instances but that's still relatively small potatoes compared to some larger sites. I know smug mug and foursquare are also hosted on EC2. What other large websites are on EC2?
Reddit uses EC2
How large is 'large'? I know that heroku runs on EC2, and they do a pretty large amount of traffic.
Netflix, DropBox, Zynga (maker of Farmville) are pretty big users of EC2
Instagram uses Amazon... at least their images are hosted on S3. Check out this link:
http://distillery.s3.amazonaws.com/media/2011/09/17/42923def0eb141fc8bb4ab0c963d0dbc_6.jpg
Also, I'm pretty sure Reddit moved away from Amazon Cloud after the most recent outage.
Here's a link to Amazon case studies that details some of their larger clients:
http://aws.amazon.com/solutions/case-studies/
In the financial world Nasdaq OMX is a good example but virtually every bank uses EC2 for computational needs (not as a main system but highly used by both banks and hedge funds to run simulations).