Scaling in the Clouds

June 30th, 2010 PubNub and Techzing talk for an hour about PubNub architectures, alternatives, performance and scalability in the cloud. Our conversation hits business startup challenges and today's exciting real time tricks.

Listen to the co-founders of PubNub
Interviewed on Teczhing

Scaling in the Clouds

The term Cloud is buzzy. For many people it is an auto-scaling server framework. To others it means hoards of on-demand virtualized OS hives. These two definitions can be true at the same time. Both are true for PubNub.

We've taken the route of auto cloud scaling for our message bus. Based on the number of current standing connections we grow or shrink our running server count. There are two thresholds that we've marked at 20% and 80%. The 20% resources mark means there are more servers running than needed. We will spin down servers until the resource level reaches close to 50%. 80% usage invokes the opposite by launching extra servers. And of course each server knows to launch our messaging bus daemon automatically on boot.

This scaling approach makes the most sense for PubNub. But what about the standing connections which may still be attached to a system that gets shut down? These will auto re-route to a running box by re-requesting a connection port from an origin server which monitors analytics and system health.

There is no special magic with cloud scaling. Cloud scaling is specific to your architecture. Focus on simplicity and efficiency. Do not build fancy slow frameworks. And Make sure to split components logically into separate services. Abstract all business rules from your cloud service somewhere else. Simplicity is most important.

Techzing Interviews PubNub

Hosts of Techzing Jason and Justin interviewed the co-founders of PubNub. Discussions rounded several conversation topics including cloud scaling, business spanning and options for real time solutions.

PubNub started as an auto scaling horizontal messaging bus. Now we provide demonstrations of vertical solutions. Open Source examples of vertical business pathways include: Mouse Speak as interactive collaboration, Traffic Beat shows analytics, and Simple Chat will explain the basics.

Our next vertical target will be gaming. We'll launch a simple yet fun real time action game. Building real time applications is easy because the PubNub real time platform is complete.

Scaling in the cloud isn't 100% on the tech dev side, it involves biz dev too. Decisions must be made in directions of growth potential. Business and Technical development lean on one another.

Cloud Services used by PubNub

Here at PubNub we use a combination of three cloud services. Google App Engine, Amazon Web Services EC2 and RackSpace Cloud. We take advantage of the strengths for each of these services. App Engine is used for simple analytics and tracking of customers. AWS EC2 and RackSpace Cloud are used together for redundancy as core connections running our message bus.

App Engine tracks customer API Keys. It is also the face the primary PubNub website. We host applications in the Application Showcase on App Engine and distribute the PubNub JavaScript Push API payload.

We use Rackspace and Amazon for our long standing connections provided by our proprietary messaging bus service. Each virtual cloud box runs our custom distributed socket pusher.

Stable Cloud Services

PubNub has a complete cloud architecture. We launched three weeks ago and continue to grow faster than expected. What is our Success Juice?: Solve the technical hardships in scaling with simplicity, provide an API focused on simplicity and rendered a fine strawberry jam for application bagels.

How can we help you with Real-Time?