…sidekiq worker servers, and every one has 4 processes which every one has 25 workers. As we are all on EC2, we use spot instances for part of the cluster so we can add more workers as needed, so it could grow up from 400 to 800 or more.
The technology is nothing special but solid, Rails + Redis + Sharded MySQL.
Thanks Libin and everyone else who entered. I hope Sidekiq Pro makes your system even better!
…physical resources to a hybrid infrastructure comprised of physical servers and Amazon EC2 cloud resources, it encountered a number of challenges:
Create application development pipeline integrating physical servers, Amazon EC2 resources, Capistrano for deploying application updates, and Vagrant for managing environments across different phases of development, testing, and production
Establish transparency throughout entire development workflow and across development team to reduce …
…backups, and if you have a test environment, load them there periodically. You can also spin up an EC2 instance to load your backups onto. In addition, you can binlog rollforward 24 hours of binlogs as a good test.
Store your binlogs off your primary server so you can perform point in time recovery.
Store your binlogs offsite for disaster recovery scenarios.
Run pt-table-checksum periodically (i.e. once a month) and make sure your servers data stays consistent. Checksumming is important, …
…Hosted Chef™ , automating the configuration of their entire EC2 environment.
Managing Meteor's sophisticated, primarily Windows-based infrastructure presented a number of challenges as the launch date for HAWKEN approached:
- Create mirrored staging and production environments using EC2 resources
- Ensure 100 percent uptime for HAWKEN game platform
- Adapt to changes in cloud resource availability on the fly, all with only …
At the time I left Songkick , it took 1.5 hours to run all the cukes and rspec ‘unit' tests on the big ball of Rails . We were already parallelising over a few in-house VMs at the time to make this manageable, but it still took 20 minutes or so to get feedback. After I left, the team worked around this by getting more slave nodes from EC2, and the build time went down to under 10 minutes.
Then guess what happened?
They added more features to the product, more tests …
…customer support portal at admin.example.com. Maybe it is a publicly accessible staging server at EC2 spun up by a developer who has since left the company and not shut down because, hey, $ 20 a month. Maybe it is a 20% project by a junior engineer which he has on the back burner for the moment. It doesn't matter why this app was forgotten: if it is publicly accessible, it will be compromised.
What was the proper way to react to these patches? Patch immediately, install a workaround …
…is simply under a great deal of traffic and you're getting CPU bound. On Amazon EC2, you could even be experiencing slow EBS I/O (since EBS is a network-based storage system). Regardless, when you see long periods of sustained request queuing, it's often useful to rule out that *any* external resource on which your application depends is the bottleneck. Generally speaking, you'll usually find that something is indeed slowing things down if you look hard enough.
If you see large …
But, with EC2 there isn't yet an equivalent - if you've used an EBS backed instance then you can stop your instance, mount the volume elsewhere and attempt to diagnose and fix any issues - there is a guide over here . This doesn't allow you to drop into single user mode, and is a bit more effort - it would be great if Amazon could provide something more like LISH...
Why would it be useful? Sometimes you can be a dork and make changes to the system that don't …
We are doing a migration from Amazon RDS to EC2 with a customer. This, unfortunately, involves some downtime - if you are an RDS user, you probably know you can't replicate an RDS instance to an external server (or even EC2). While this is annoying, this post isn't going to be a rant on how RDS can make you feel locked in. Instead, I wanted to give you a quick tip.
So here's the thing - you can't stop replication on RDS read replica: replica> STOP SLAVE; ERROR 1045 …
…stack from AWS. In fact, it's bringing together the traditional components from EC2, S3, RDS and CloudWatch into a fully scalable infrastructure. So if your application is running on AWS already, it's very likely you can take advantage of Elastic Beanstalk's orchestration and scaling system right now. Elastic Beanstalk supports applications running on Java, Python, PHP and Ruby running on Linux, or IIS running on Windows Server. It also supports databases …