#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.
⚠️ This post links to an external website. ⚠️
If this post was enjoyable or useful for you, please share it! If you have comments, questions, or feedback, you can email my personal email. To get new posts, subscribe use the RSS feed.