
CTO Corner: Yottaa is a Pluggable App Optimization Platform
A Networked Application Platform
When we founded YOTTAA, we set out to build a Networked Application Platform.
We wanted to create a modular cloud platform, delivered as a Sevice, and comprised of numerous applications that would transform Web and Mobile Applications in real-time.
We originally called it the YOTTAA Cloud Routing Platform because the system was designed to route Customer traffic based on:
- End User Context: location, client type, cache state, bandwidth, etc.
- End User Analytics Data
- Our Customer’s Application
- The Application’s Meta-data
Single Step Enablement
One of the main theses of YOTTAA was that we would deliver our service in a single step. Customers would add/change a single entry to their DNS service, and traffic would be routed through our Networked Application Platform. Today this thesis still holds true.
A Giant Leap Forward
Implementing such a system meant building out a massive overlay network, which is comprised of multiple cloud providers and physical datacenters. Once routed to YOTTAA, our Global Server Load Balancer (GSLB) routes the Visitor’s traffic to an Application Processing Unit (APU). Once traffic arrives at the APU, it will execute a series of pluggable applications which have the ability to modify traffic at four distinct points:
1. Visitor ingress – routing, network and security management rules for incoming visitor traffic
2. Origin ingress – cache management and asynchronous processing for requests into a distributed domain/datacenter
3. Origin egress – routing, cache management and asynchronous processing for requests returning from a distributed domain/datacenter
4. Visitor egress – real-time personalization, targeting or security rules and optimizations applied before traffic is returned to the client browser
Since we began building the platform, YOTTAA has deployed nearly 50 Applications that enhance Web and eCommerce Application performance and usability. Some examples of publicly consumable interfaces to these applications include InstantOn, RapidTag, Transformer, Distributed Global Caching, Responsive Imaging, and Layer 7 WAF Security.
Beyond OSI
I spent my formative years at Cabletron Systems working in the belly of the Internet, building modern Web Applications, and witnessing companies struggle with Web Performance. The primary challenge was core competency: Network Providers understand OSI Model and Web Application engineers understand HTML, CSS, and Javascript. To solve Web Performance challenges you must combine the disciplines. CDNs, whether the startups of today or the stalwarts from 10 years ago, focus on OSI layer optimizations. Despite their sophistication, and regardless of Marketing claims, they can only deal with the body of an HTTP message as a binary blob.
YOTTAA goes far beyond binary blob manipulation. We transform every type of Web Application content into a content specific object model, and then run Networked Applications against that object model to transform it. The result is a faster, more engaging and a more valuable Web Application for our customers.
Data? Data? Data?
In addition to conceiving of Networked Applications to optimize Web Applications, we knew it would be necessary to create a Data Processing System to capture, store and process the vast amounts of data the YOTTAA system generates. Why? YOTTAA was not built solely for the purpose of making Web Applications faster. We wanted to create a way to increase the Application’s value, and to ensure that everyone across the business could understand that value. This is easier said than done of course. But in order to build a successful Networked Application Platform, it is critical that the pluggable Applications can operate on real-time data to make intelligent decisions.
Today many of YOTTAA’s Networked Applications use this data to perform their individual tasks. For example:
- InstantOn uses metadata about HTML page structure to automatically differentiate between static and dynamic elements on any given page. The page is then fragmented to separate the static (cacheable) elements from the dynamic elements (which are replaced with placeholders so the entire page can be cached) so the entire page can be sent from the cache to the Visitor. This dramatically increases First Byte transfer times by breaking the critical rendering path. But more importantly, it allows us to serve entire pages before any dynamic content has been requested from the origin server – for any page.
- Our Metering & Billing system analyzes every piece of request data to accurately invoice customers
- The Global Monitoring system uses synthetic agent data for Web and Mobile traffic to detect anomalies and notifies the customer of problems.
Every YOTTAA Application performs its job by analyzing the data collected by the real-time Data Processing System to improve response time and increase effectiveness & impact. The union of the Networked Application Platform and the Data Processing System is what we have brought to market as the YOTTAA ContextIntelligence Architecture.
Closing the Loop: Cloud to the Client
In the summer of 2013, YOTTAA released our Client Application Platform, named ContextAGENT, which extends our ContextIntelligence Architecture to the Client Web Browser. It was formally announced as the YOTTAA Engagement Cloud. The Client Application component is written entirely in JavaScript and provides a proxy layer between the Web Application and the Client Web Browser. This proxy layer does three things:
1. Intersects the interaction of the Web Application with the Client Web Browser
2. Provides a platform for building out Web Applications
3. Captures additional Application and Visitor data, feeding it into the Data Processing System
ContextAGENT is delivered by an APU application; it is included as an inline <script></script> block immediately delivered to the Client Web Browser with the initial visitor egress traffic. This improves the fidelity of the visitor’s experience by contextually optimizing Web Application traffic throughout the entire Visitor session.
Extending Our Data
Being the best is not enough – in anything, you need to prove it. In the Spring of 2014, YOTTAA completely changed the game in Web Performance. Sure, faster is better and of course Google can claim an X millisecond improvement in performance will yield Y value to the business, but in reality only 10 companies in the world have achieved and realize revenue impacts at that scale. But just because a company isn’t a massive global enterprise doesn’t mean it’s not important to prove the value of optimizing Web Applications. Anyone working for a company with an online presence knows the dotted line between performance and business impact. Until last year, every business was forced to toe that dotted line, relying on Amazon, eBay, Google, Yahoo! and others to validate their budgets and spending in the name of Web Performance.
YOTTAA decided it was necessary to prove, to every customer, how much optimizing Web Performance and user engagement together resulted in measurable business value in a controlled and scientific way. In June of 2014 we launched YOTTAA’s ImpactAnalytics AB testing Application. We created an application that can predictably and accurately split traffic in real time, allowing Customers to verify the benefits of optimizing their Web Application for themselves.
Where will we go next?
YOTTAA must keep invovating to stay the premier Web and eCommerce Application optimization product. The Web is a rapidly advancing system. Optimizations that may have worked 5 years ago (Domain Sharding) matter little today and the best practice of today (RWD) require new ways to optimize.
You’ve heard AT&T say “Faster is better!” More importantly, YOTTAA has proven unequivocally “Faster is money!”