Khóa Phân Tán Giải Quyết Vấn Đề Một Người Một Đơn Hàng
Hạn chế của khóa đồng bộ hóa (synchronized) trong môi trường phân tán
========================================
Khóa đồng bộ hóa là khóa tại JVM
Khi có hai luồng cùng truy cập vào khối được khóa, khóa đồng bộ hóa này sẽ trở nên vô hiệu. Điều này xảy ra vì synchronized là khóa cục bộ, chỉ có khả năng đồng bộ hóa ở cấp độ luồng, mỗi JVM đều có m ...
Đăng vào ngày 3 tháng 6 lúc 22:09
Cấu trúc Hash trong Redis: Cơ chế hoạt động và tối ưu cho hệ thống tải cao
Cơ chế lưu trữ và chọn mã hóa động
Redis Hash không sử dụng một cấu trúc duy nhất để lưu trữ tất cả các trường. Thay vào đó, engine sẽ tự động chuyển đổi giữa ziplist và hashtable dựa trên ngưỡng cấu hình. Khi số lượng trường nhỏ và giá trị có độ dài giới hạn, Redis ưu tiên ziplist để giảm thiểu chi phí con trỏ và overhead của node. Khi vượt qu ...
Đăng vào ngày 3 tháng 6 lúc 18:24
Kiến trúc và Phương thức Triển khai Khóa Phân tán
Tính cấp thiết của Khóa Phân tán
Trong các kiến trúc hệ thống hiện đại, nơi ứng dụng được phân tán trên nhiều máy chủ, việc đồng bộ hóa tài nguyên dùng chung là một thách thức lớn. Khóa phân tán (Distributed Lock) ra đời để giải quyết vấn đề điều kiện tranh chấp (race condition), đảm bảo rằng một phương thức hoặc đoạn mã quan trọng chỉ được th ...
Đăng vào ngày 3 tháng 6 lúc 01:47
Tối ưu hiệu năng tải menu trong dự án JeecgBoot
Trong các hệ thống doanh nghiệp sử dụng nền tảng low-code JeecgBoot, menu điều hướng đóng vai trò then chốt ảnh hưởng trực tiếp đến trải nghiệm người dùng. Khi số lượng menu tăng lên hàng trăm hoặc hàng nghìn mục, việc tải toàn bộ dữ liệu cùng lúc sẽ gây ra hiện tượng giật lag, chiếm dụng bộ nhớ và làm chậm thời gian phản hồi.
Phân tích điểm n ...
Đăng vào ngày 2 tháng 6 lúc 02:40
Hệ thống lưu trữ đám mây hiệu năng cao dựa trên Spring Boot
Đây là một hệ thống lưu trữ tệp trực tuyến được xây dựng bằng Spring Boot, tập trung vào khả năng mở rộng, bảo mật và trải nghiệm người dùng. Hệ thống hỗ trợ quản lý người dùng, tải lên/tải xuống tệp đa luồng, điều khiển phân quyền chi tiết, quản lý phiên bản tệp, mã hóa dữ liệu đầu cuối và tối ưu hóa hiệu năng thông qua bộ đệm phân tán và xử l ...
Đăng vào ngày 29 tháng 5 lúc 09:10
Thao tác với Redis trong Python: Hướng dẫn toàn diện
Redis là một hệ thống lưu trữ key-value hiệu năng cao, hỗ trợ đa dạng cấu trúc dữ liệu như chuỗi (string), danh sách (list), tập hợp (set), tập hợp có thứ tự (sorted set/zset) và bảng băm (hash). Khác với các bộ nhớ đệm đơn giản như Memcached, Redis cung cấp các thao tác nguyên tử trên từng loại dữ liệu, kèm theo cơ chế bền vững (ghi lên đĩa), ...
Đăng vào ngày 28 tháng 5 lúc 13:31
Hướng dẫn cài đặt và sử dụng client Redis-RB
Hướng dẫn cài đặt và sử dụng client Redis-RB
Redis-RB là một thư viện client Redis được viết bằng ngôn ngữ Ruby, cung cấp hỗ trợ toàn diện cho các lệnh Redis nhằm đơn giản hóa quá trình tương tác với cơ sở dữ liệu Redis. Dưới đây là hướng dẫn về cấu trúc dự án, khởi tạo và cấu hình cơ bản của thư viện này.
1. Cấu trúc dự án và giới thiệu
Mặc dù ...
Đăng vào ngày 28 tháng 5 lúc 08:39
Thao tác Redis với Python
Phần mềm Python sử dụng thư viện redis để tương tác với cơ sở dữ liệu Redis. Dưới đây là các hàm chính cho thao tác với các kiểu dữ liệu khác nhau như chuỗi (strings), danh sách (lists), tập hợp (sets), tập hợp sắp xếp (sorted sets) và bản đồ hash.
Chuỗi (Strings)
Các hàm chính để thao tác với chuỗi bao gồm: SET, GET, GETSET, SETEX, SETNX, MSE ...
Đăng vào ngày 26 tháng 5 lúc 20:28
Distributed Locking Mechanisms: DB, Redis, and ZooKeeper Comparisons
Understanding Distributed Locking Requirements
In distributed systems, concurrent access to shared resources must be controlled—similar to how locks prevent race conditions in single-process multi-threaded environments. A distributed lock ensures safe coordination across multiple nodes and clients. Ideally, such a mechanism should provide:
...
Đăng vào ngày 26 tháng 5 lúc 10:50
Cơ Chế Lưu Trữ Persistent trong Redis: RDB, AOF và Chế Độ Kết Hợp
RDB (Redis Database)
RDB là phương thức lưu trữ mặc định của Redis, thực hiện qua cơ chế chụp ảnh (snapshotting) từ trạng thái bộ nhớ.
Phương thức kích hoạt
Thỏa mãn quy tắc cấu hình tùy chỉnh
Thực thi lệnh bgsave hoặc save
Thực thi lệnh flushdb
Thao tác sao chép chủ - phụ (lần đầu)
Cấu hình tham số
Trong redis.conf:
save 600 5
save ...
Đăng vào ngày 26 tháng 5 lúc 03:43