EdgeMesh: A Case Study in Performance at Scale
With Triton + Manta + Containerpilot we’re running on autopilot.
Jacob Loveless, Chief Executive Officer, Edgemesh
EdgeMesh is a premier web acceleration company focused on client side, edge native optimizations that help customers deliver web experiences more securely, more reliably and 2-10x faster. Unlike traditional platforms, EdgeMesh requires zero infrastructure changes and is implemented by adding a single line of code to any website. Operating on more than 8500 networks globally in over 138 countries, EdgeMesh changes the way the web is delivered around the globe, helping companies eliminate complicated and expensive global bandwidth fees by up to 90% while delivering faster, more reliable edge optimizations.
In order for the comparatively compact team at EdgeMesh to disrupt the mature 8 billion dollar content delivery market, they needed to securely and efficiently build and deploy a service that was superior in both performance and breadth. Accomplishing that required EdgeMesh to deliver a ultra-low latency, global, edge native solution with with sub 1ms core service response times, and scale it to handle 10’s of millions of messages per second.
EdgeMesh chose Joyent Triton cloud compute, Joyent Manta object storage, and Joyent ContainerPilot container orchestration for its performance and simplicity.
The founders of EdgeMesh became familiar with Joyent’s performance optimization options and deep introspection capabilities while using its on-premises stack at an Infrastructure as a Service provider built for Wall Street. Since EdgeMesh had many of the same performance, scale, and introspection needs, they decided to return to their roots and build EdgeMesh with Joyent technology. EdgeMesh adopted a Docker based, Linux native deployment using a built-in emulation layer provided by Triton.
Jacob Loveless, the CEO of EdgeMesh had this to say about why they use Joyent cloud technology, “For us, Joyent Triton gives us the bare metal performance we need, the deep heritage of introspection from SmartOS, the linux compatibility our developers want and a Docker abstraction that dramatically simplifies our deployment and management layers.”
In the EdgeMesh environment, each Joyent Triton software defined datacenter is a single unified ‘Docker host’. This allows the EdgeMesh deployment system to be contained in a single Docker Compose file. When combined with Joyent Containerpilot, they have a painless, self managing, self scaling global platform. (See bit.ly/edgecleanslate) .
“Containerpilot was a choice because we wanted something very simple and very light weight,” said Loveless. “Kubernetes was simultaneously too much complexity and too little control. We wanted to remain on bare metal, control scaling using deep introspection and have very fine grained control over recovery actions.”
EdgeMesh also developed the ability to automate daily deployments of the entire EdgeMesh system with their “Clean Slate Protocol” - a systematic, daily and global teardown and redeployment of their entire backend services.. They do this for a number of reasons; to ensure consistent deployment methodology, to decrease the attack surface of the platform, and to ensure consistent (and economical) self scaling. One of the keys to ensuring their Clean Slate Protocol successfully protects and stores the state of its mission critical data is Joyent’s Manta object storage.
Loveless described their use of Manta, “As a backing store, Manta is as any other cloud object store. But for us, the power of Manta is our ability to spin up Manta compute jobs on individual logs files. Since we store each day’s database file in Manta we can run very complex compute jobs across Manta on the data - in parallel. By bringing the compute to the data, and not the other way around, Manta allows us to achieve very fast serverless style data analytics every day”.
As an example: every day they grab the log file for each datacenter and load that into a Manta job. Each job performs a number of aggregations on the log file using the same database binary they run in production. Once all the aggregations are complete a new database file is stored in Manta that can be loaded for historical analysis.
From a performance and service efficiency perspective, Joyent’s cloud technology enables EdgeMesh to service millions of client requests per second and provide rich, real-time dashboards using a minimal cloud footprint of around 2 dozen docker instances and less than 40 vCPU’s per region. The impact and value of that is seen and appreciated by EdgeMesh customers daily.
The power and simplicity of Joyent’s cloud technology allows EdgeMesh to perform a full global deployment of EdgeMesh every day across 4 datacenter locations with zero operations interaction. In Q3 2018, devops management accounted for less than 6% of their overall engineering effort. With Triton’s market leading bare metal performance, EdgeMesh continues to operate it’s platform at a cost basis well below the incumbents. Over the past 2 years, EdgeMesh has grown from managing a real-time content delivery mesh of 500 networks to now over 8,500 networks. Despite that 17x increase in demand, their Triton cost basis has only increased by 40%. “It’s amazing what you can do when you run on the metal, and have the tools and partners to help make every clock cycle count.” said Loveless.
Post written by Joyent