How we did it: Making an API gateway extensible in any language
Blog post from Tyk
Tyk has developed an extensible API gateway that can operate with various programming languages, addressing the challenge of integrating unique or legacy systems within contemporary infrastructures. Originally built as a static system, the Tyk gateway evolved to support plugins through an initial JavaScript interpreter and later expanded to include Python, Lua, and GRPC, enabling compatibility with any language. By utilizing these dynamic languages and GRPC's fast binary messaging, Tyk allows users to write and maintain plugins in familiar languages without needing new expertise, thus reducing overhead. This flexibility is beneficial for companies with bespoke systems requiring integration into broader workflows, while also providing a scalable and customizable solution for different industries. The development process involved overcoming significant technical challenges, particularly with performance in Python and the integration of interpreters, which were addressed through innovations like the Dynamic Loader. Looking forward, Tyk plans to incorporate WebAssembly (Wasm) to further enhance plugin capabilities, demonstrating a commitment to continuous improvement and customization.