CAKE LABS decided to incorporate AdroitLogic’s UltraESB as the Enterprise Service Bus (ESB) to integrate their systems. The requests are mediated to the authentication server through the ESB and CAKE LABS can now easily support different versions of their APIs by forwarding the requests to relevant endpoints based on the HTTP headers of the request messages.Download PDF
CAKE, their flagship product, is a cloud based software platform that revolutionizes the restaurant experience for both restaurant owners and patrons alike. It offers an integrated, end-to-end solution that includes amongst other things, point of sales (CAKE POS), waitlist management (CAKE Guest Manager), CAKE Connect, reporting, data analytics and a variety of payment integration options.
CAKE LABS is headquartered in Redwood City in the heart of the Silicon Valley, while their core CAKE LABS engineering and operation teams are located in Colombo, Sri Lanka, and Austin, Texas. Together they seamlessly combine Valley innovation with engineering ingenuity to create the ultimate restaurant experience. United States is the home to the growing customer base of CAKE LABS – a diverse collection of over 600,000 mom-&-pop, chain and fine dining restaurants.
Initial issue CAKE LABS faced was that their API providers and microservices did not have the capacity to manage their own authorization mechanisms. Therefore, a centralized authentication and authorization mechanism was required.
There are around three million requests per day coming from CAKE LABS mobile applications, browser applications and internal servers to the internal authentication server and back end servers. The size of these requests vary from a few kilobytes to five megabytes, most of them being in JSON format. CAKE LABS wanted to proxy these API calls and intercept certain payloads to perform certain manipulations. In some cases they wanted to perform payload aggregation as well. Another requirement was to support different versions of their APIs through header based routing.
CAKE LABS decided to incorporate AdroitLogic’s UltraESB as the Enterprise Service Bus (ESB) to integrate their systems. The requests are mediated to the authentication server through the ESB and CAKE LABS can now easily support different versions of their APIs by forwarding the requests to relevant endpoints based on the HTTP headers of the request messages. Further, CAKE LABS fulfills different payload aggregation and manipulation requirements effortlessly through the user-friendly mediation support API calls offered by UltraESB.
Vice President - Engineering and Architecture
The UltraESB-based solution introduced much-needed flexibility to accommodate changes and allowed seamless integration of the internal systems in CAKE LABS. With the flexibility introduced through the UltraESB, CAKE LABS is now capable of providing backward compatibility for their APIs smoothly, and can adapt to subsequent changes efficiently.
CAKE LABS runs two UltraESB instances deployed in Amazon EC2 servers in active-active configuration, with an Elastic Load Balancer in front of the two servers forwarding incoming requests to one of the instances in a round robin manner. This ESB setup processes three million requests per day with message sizes varying from a few kilobytes to five megabytes.