We have an export feature in one of our PHP projects. Given a data source, it will build an Excel file over the course of many background jobs. Once the file is complete, a final job will be kicked off to email the user a tokenized link for download. This strategy has worked beautifully, without any significant issue in years. That is, until, as you might have guessed by the title, it didn't.

tldr; We solved a memory issue by rewritting a single feature in our PHP monolith as a stand-alone, long-running Rust service.

continue reading on www.eloquentarchitecture.com

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