What architecture does Algolia use to provide a high performance search engine?
The Algolia service is powered by a built-from-scratch search engine implemented in C++, which is hosted inside a NGINX server as an NGINX module. The Algolia engine was originally designed for mobile devices as a mobile SDK (it provided an offline search engine SDK to be embedded in an app) before it was transformed into an online API. We were forced to optimize heavily for performance given the very limited amount of computing resources that smartphones had at the time. Now that the same technology runs on high-end clusters of machines, it’s become even faster.