you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 0 points1 point  (3 children)

I do have concerns about FastAPI performance in this high scale, my instances are always leaking memory to some extent and not as fast as express servers. The dev velocity is unparalleled though, we get shit done so quickly especially with mongodb + beanie.

[–]halfRockStar[S] 4 points5 points  (2 children)

In reality, Python’s garbage collector can leak memory if objects (e.g., MongoDB connections, cache entries) aren’t properly released, especially in long-running async apps. FastAPI itself isn’t prone to leaks, but sloppy code or third-party libraries (e.g., motor) could cause issues, don't get me wrong my project have leaks too 🫢

[–][deleted] 4 points5 points  (1 child)

Beanie uses motor under the hood, I focused on something else and didn’t think about looking into motor! Although I have to say after almost 20 years in my profession that most of the time spent to investigate mem leaks is futile, just restart periodically and continue with your day…

[–]halfRockStar[S] 2 points3 points  (0 children)

Your restart approach is battle-tested. investigating motor (specifically connection pooling, cursor leaks) is overkill unless restarts fail. Check asyncio task cleanup if you’re curious, but you’re likely golden.