System design exercises by Arpit Bhayani
-
Updated
Dec 12, 2024 - Go
System design exercises by Arpit Bhayani
Pessimistic row-level locking and distributed advisory locks for EF Core — ForUpdate() / ForShare()
Case Study - Sample Book Delivery App (Spring Boot, Spring Security , Mysql, JUnit, Integration Test, Docker, Test Container, AOP, CI/CD, Prometheus, Grafana, Github Actions)
A basic hotel reservation system with 2PC using pessimistic and optimistic locks in Go
distributed and local lock provider
In this repo I would like to show 4 strategies of concurrency control for writing data using Python SQLAlchemy ORM and PostgresSQL (however this examples could be easily transformed to plain SQL).
A basic e-commerce application is built using Go/Gin and follows micro-service architecture
Examples of applying pessimistic and optimistic concurrency control with AWS DynamoDB.
A robust Train Seat Reservation API built with .NET. Demonstrates Clean Architecture, DDD, CQRS, and pessimistic concurrency control using MS SQL Server and Redis.
A high-performance Payment Gateway API built with Spring Boot 3 to solve concurrency race conditions and guarantee idempotency using Redis and PostgreSQL Pessimistic Locking.
A Spring Boot and React banking architecture implementing a double-entry ledger, idempotent UPI transaction processing, and deterministic pessimistic locking.
A Spring boot application, showcasing different locks that can be implemented in a Ticketmaster clone.
Banking Application APIs | RESTful Banking APIs built with Java & Spring Boot, using JPA, JDBC, and MySQL for persistence. Implemented pessimistic locking, DTOs with Java records, and global exception handling. Tested via Postman.
Task
Inflearn. 재고시스템으로 알아보는 동시성이슈 해결 방법
REST service that allows users to create bank accounts, transfer money between them, view them, and handle concurrent transfers requests safely.
A BookMyShow-like ticket booking system with seat hold mechanism, and pessimistic locking to prevent double bookings.
A Jakarta EE banking system featuring EJB Persistent Timers, Container-Managed Transactions & modular EAR architecture. Uses AOP Security Interceptors, IdentityStore & HttpAuthenticationMechanism for RBAC. Implements thread-safe Singleton beans, pessimistic locking & atomic rollbacks via "@ ApplicationException" for high-concurrency data integrity.
Pessimistic Locking example over MySQL database table row
Auto Parts E-Commerce — Architecture Showcase
Add a description, image, and links to the pessimistic-locking topic page so that developers can more easily learn about it.
To associate your repository with the pessimistic-locking topic, visit your repo's landing page and select "manage topics."