Vertical Slice Architecture: Tổ Chức Code Theo Feature
Tìm hiểu Vertical Slice Architecture với ví dụ thực tế, cấu trúc thư mục, luồng request, trade-off, và cách nó khác với layered, clean, và hexagonal architecture.
Tất cả bài viết với thẻ "system-design"
Tìm hiểu Vertical Slice Architecture với ví dụ thực tế, cấu trúc thư mục, luồng request, trade-off, và cách nó khác với layered, clean, và hexagonal architecture.
Nắm vững nền tảng durability của distributed systems: Write-Ahead Log cho crash recovery, Segmented Log để quản lý file, và Low-Water Mark để dọn dẹp log. Với ví dụ thực tế từ PostgreSQL, Kafka và etcd.
Làm chủ distributed systems patterns từ write-ahead log đến consensus protocols. Lộ trình toàn diện covering durability, leader election, replication, partitioning, distributed time và cluster coordination.
Hướng dẫn toàn diện về cách chọn software architecture: decision framework, phân tích trade-off, CAP theorem, architecture decision record (ADR), evolutionary architecture, kết hợp pattern, anti-pattern như resume-driven development, case study từ startup đến enterprise, và architecture review checklist.
Hướng dẫn toàn diện về domain logic patterns từ PoEAA của Martin Fowler: Transaction Script cho operations đơn giản, Domain Model cho business rules phức tạp, Table Module cho data-centric apps, và Service Layer cho coordination. Bao gồm code examples bằng TypeScript và Java.
Hướng dẫn toàn diện về serverless architecture: FaaS vs BaaS, AWS Lambda và Azure Functions, cold start, stateless design, event trigger, serverless database, composition pattern, cost model, limitation, framework, và khi nào serverless phù hợp so với server truyền thống.
Làm chủ enterprise patterns của Martin Fowler — domain logic, data source, ORM, distribution, concurrency và session state patterns. Lộ trình toàn diện cho việc xây dựng ứng dụng enterprise dễ bảo trì.
Hướng dẫn toàn diện về Domain-Driven Design: bounded context, ubiquitous language, context mapping, entity, value object, aggregate, repository, domain event, aggregate design rule, anti-corruption layer, event storming, DDD với microservices, và khi nào DDD là quá mức.
Hướng dẫn toàn diện về hexagonal architecture: ports và adapters, driving vs driven side, dependency inversion ở core, cấu trúc folder thực tế, testing với mock adapter, so sánh với layered architecture, và ví dụ thực tế swap infrastructure.
Hướng dẫn toàn diện về event-driven architecture: event vs command vs query, message broker (Kafka, RabbitMQ), pub/sub vs point-to-point, choreography vs orchestration, idempotency, schema evolution, dead letter queue, và triển khai thực tế.