Sunday, January 12, 2014

ScaleSimple - An Open Source CDN

I am proud to announce that today we are open sourcing our project, ScaleSimple, an open CDN platform. Head on over to GitHub to see all the code. We have been chipping away at this for quite some time and at one point, thought it would be a viable SaaS business. However, running and supporting infrastructure while keeping our day jobs was certainly not an easy endeavor, so we agreed it was time to just open source what we had.

For a little background, the reason we came up with this platform was that we felt the gap in the market between "low end" CDNs and "enterprise" CDNs was too wide. The low end platforms were cheap, and very easy to use, but lacked any substantial feature set or customization. On the high end, the features were rich, but so was the cost. It was not viable for a startup who needed a deep feature set to go to a lot of these enterprise players. Now, maybe we are way off the mark, and the majority of people don't need the flexibility or customization that we envisioned, but either way, we built something. We felt the tools available were mature enough to allow someone to seriously consider having their own CDN Platform.

Our idea was to leverage Varnish, but also build a nice UI around it that allowed people to build very customized rules, without having to muck with VCL. This also gave us hope, that we can build more complicated VCL snippets or even custom VMODs, that would be hidden to the end user with a few drop downs and checkboxes to make things easy. Two examples of this are Token Authorization and GeoIP blocking that we built and are part of the open source code.

As it stands the platform is functional,but needs some love, specifically unit tests.  Not just on the rails/rspec side but also using varnishtest to ensure that all of our rules and new configurations would work using every permutation imaginable. We also need more documentation. Right now there is a fair bit of looking through code to figure out whats going on. We started with some basics, but its not there yet. We also need better first time user "bootstrapping" so that users can get up and running quickly without a lot of fuss. An installer would be amazing. We also need better per install customization, by using things like .env files for the rails app to make per install variables easier to configure.

Now that varnish has all this flexibility with vmods (even more so in the upcoming 4.0) , one of our hopes was that people would now have a place, dare I even say open marketplace, to submit things like vmods and new configuration ideas that would continually enhance the platform. One of the concepts we have in ScaleSimple is "templates", so that you can build a system wide ruleset that can be used to pre-configure new rulesets very quickly. Good examples here are things like wordpress, drupal, etc. It could be tedious to get all the nuances of these configurations right (dealing with cookies, admin login urls, etc) so having a template can really help here. Not to mention an easy to way to easily apply that template to multiple configurations for different hostnames.

We hope that the community finds the platform useful, and we hope to get a ton of activity to truly make scalesimple something great. We personally see a lot of potential to disrupt this space and be incredibly innovative. Please follow us on twitter at @scalesimple for updates to our progress and pull requests are welcome !

Update: made it to front of HN !  Continue the discussion on Hacker News



for IT the said...

Great Article
Java Online Training | Java EE course

Java Training in Chennai | J2EE Training in Chennai | java j2ee training institutes in chennai ~ Java Course in Chennai | Java Training Institutes in Chennai

Java 360 | IT Technical Articles |Java Training Institutes

Addison adolf said...

We are offering website design service & service in affordable price also offering Application for Android & IOS...........

John Snow said...

In 2016 site loading speed is very important, because you will improve your google ranking by using recommendations from pagespeed insight and cdn, for example cdnsun.

Anonymous said...

Hello - I recently saw on your blog you discussed you worked with Kaleil Isaza Tuzman. You included you would be open to any questions about him. I was wondering if you could answer some questions I had about your experience meeting him and what it was like to work with him. I'd be very interested in a way to contact you.

Thank you, hope you can possibly make this happen.

Arjun Rishi said...

Informative post. Glad to find your blog. Thanks for sharing.

digital marketing training in chennai

Arjun Rishi said...

Informative post. Glad to find your blog. Thanks for sharing.

digital marketing training in chennai

Logavani G said...

really you have post an informative will be really you have post an informative blog. it will be really helpful to many peoples.thank you for sharing this blog.
BigData Analytics Training

Anu Sri said...

Excellent post. This is very useful. Thanks for sharing.

php training in chennai