Node Knockout with blitz.io
What's blitz.io?
blitz.io, powered by Mu Dynamics, is a self-service load and performance testing platform. Built for API, cloud, web and mobile application developers, blitz.io quickly and inexpensively helps you ensure performance and scalabilty. And we make this super fun.
Node.js is purdy fast, but if you are not careful in the way you invoke backend services like CouchDB or MongoDB, you can easily cause pipeline stall making your app not scale to a large number of users. Typically you will end up with each concurrent request taking longer and longer resulting in timeouts and fail whales. Load testing shows you what kind of concurrency you can achieve with your app and how it's actually scaling out.
Go to our login page and use your Facebook or Google accounts to login in with just 2 clicks. As simple as that. You will immediately be able to run load test against your app from the blitz bar.
If your app is at http://my.cool.app
, the following blitz line will generate concurrent hits against your app:
--pattern 1-250:60 --region virginia http://my.cool.app
As simple as that. If your express
and connect
routes have parameters in them that you use for looking up in your favorite database, you can read up on (variables)[http://docs.blitz.io/variables] to parameterize query arguments and route paths so you can simulate production workloads on your app.
We are super excited about sponsoring Node Knockout and have something fun planned.
At the start of the event, we are providing all contestants with enough blitz-power so you can generate lots of hits against your cool node.js app for 48 hours. We are also working on a scoreboard so you get bragging rights on the app with the most number of hits. Watch this page at the start of the event and you'll know what to do.
http://blitz.io/events/nodeknockout
For those developers that don't like UI and prefer command line, here's the simplest way to run iterative load tests right after you git push
your changes to the app:
$ gem install blitz
$ blitz api:init
$ blitz curl --pattern 1-250:60 --region virginia http://my.cool.app
To build cool node.js apps is awesome, to watch it scale out? priceless!
Just my $0.02, I think this needs to be more of a "how to / why to" format.
The first part is almost there, but you need to do a better job showing people how it works. What do they have to do to get it set-up? What does the leaderboard look like? Why would I care when I have 100 other things to do in 48 hours... you need to convince me that it's super simple and super fun.
The continuous integration part doesn't make any sense to me. Why would you use blitz as part of CI? How do you use it? Show how the node.js client implementation works, don't just point people to a link.