5 links
tagged with all of: concurrency + performance
Click any tag below to further narrow down your results
Links
Since adopting Go in 2016, American Express has gained valuable insights into its performance, efficiency, and scalability. Key learnings include improved dependency management with Go Modules, the challenges of concurrency, the importance of training for idiomatic Go, the establishment of standardized frameworks, and fostering an internal community to enhance collaboration and innovation.
SELECT FOR UPDATE in PostgreSQL is often misused, leading to unnecessary row-level locking that can severely impact application concurrency and performance. Developers are encouraged to opt for FOR NO KEY UPDATE instead, as it aligns better with typical update scenarios and prevents deadlocks. Properly managing lock levels according to actual data manipulation needs can significantly enhance system efficiency.
Turso has rewritten significant portions of their API using Go to enhance performance and maintainability. This transition aims to leverage Go's efficiency and concurrency features, ultimately improving the overall experience for developers and users alike. The blog post details the motivations behind this decision and the expected benefits.
Zig has introduced a new asynchronous I/O interface that allows developers to specify the concrete I/O implementation, enhancing code reusability and performance. This design decouples async/await from the execution model, enabling better concurrency management and supporting various I/O implementations, including blocking and event-driven models. The article discusses the implications of this change through code examples and outlines future implementations planned for Zig's standard library.
Recall.ai faced significant performance issues with their Postgres database due to the high concurrency of NOTIFY commands used during transactions, which caused global locks and serialized commits, leading to downtime. After investigating, they discovered that the LISTEN/NOTIFY feature did not scale well under their workload of tens of thousands of simultaneous writers. They advise against using LISTEN/NOTIFY in high-write scenarios to maintain database performance and scalability.