Monday, December 06, 2021

Golang: Postgres without ORM

Back to basics: Writing an application using Go and PostgreSQL

Journey in Dropping the ORM (in Golang)

Over time ... kept having to increase the memory capacity of our instances, eventually reaching the maximum and then watching our containers die. As the data volume grew we saw the number of containers grow in somewhat linear fashion. One would hope the backend would instead scale sublinearly.

The ORM was a natural culprit: it’s easy to see that many ORMs will make use of object introspection to build SQL statements, hydrate results, or both. Gorm’s memory footprint is extreme although sadly not uncommon.

No comments: