#development #golang #reading-list #tools

🔗 A "Tinier" APISIX Plugin

In a previous blog post titled A 'Tiny' APISIX Plugin, I explored how to write custom Apache APISIX plugins in WebAssembly. I used TinyGo and the Proxy-Wasm specification to write a plugin and compile it into a wasm binary to be run in APISIX.

How big is this Wasm binary? Well, let's check:

$ ls -lah \*.wasm
-rwxr-xr-x@ 1 navendu staff 555K Oct 7 17:42 custom_response_header.go.wasm

It is not too bad, but reducing the size further would mean faster startup times, reduced memory and storage use, and reduced network latency, which could ultimately reduce costs (financial and otherwise) in constrained environments.

In this article, I will explore how we can optimize the size of Wasm binaries and how it corresponds to tradeoffs in performance.

continue reading on navendu.me

⚠️ This post links to an external website. ⚠️