Leveraging the cloud for distributed testing
So far, we have seen how we can distribute load to various physical or virtual machines and by so doing achieve more load than could ever be possible with a single machine. Our setup thus far, though, has been internal to our network using a master/slave configuration. Sometimes, it helps to isolate any artificial bottlenecks occurring on the LAN and run your tests from more realistic locations external to your network. This has the added benefit of leveraging substantially larger hardware at minimal cost thanks to the various cloud offerings now at our disposal. Another area worth considering is the master/slave setup we have employed thus far. While this will work perfectly fine when few slaves are configured, as more slaves get added to the mix, the master node becomes a huge bottleneck. This shouldn't come as a surprise since I/O and network operations increase as more and more slave nodes try to feed ongoing testing results to the master...