Distributed cache là gì? – điều gì khiến nó trở nên mạnh mẽ?
Bài viết được sự cho phép của tác giả Kiên Nguyễn
Ngày nay, một ứng dụng web, một app trên mobile cũng có thể có cả triệu user sử dụng, truyền đạt (gửi đi tới cả tera bytes). Rõ ràng là thế, vậy mới đẻ ra nghành Khoa Học Dữ Liệu (Data Scientist), càng ngày càng hot.
Để đảm bảo cho trải nghiệm của người dùng, cache chưa bao giờ là sự lựa chọn tồi. Tuy nhiên, chỉ mỗi cache không là chưa đủ.
Số lượng request nhiều -> một server cache sẽ chịu tải quá lớn -> nếu đầu tư quá nhiều phần cứng -> lãng phí. Đây là nguyên nhân chính ta cần phải biết thêm về Distributed cache (Cache phân tán).
1. Distributed cache là gì?
Distributed cache thì có 2 chữ, chữ Distributed và chữ Cache. Giờ focus vô chữ Cache trước
Caching is a commonly used technology to boost application performance as well as reduce costs
Caching là công nghệ thường được sử dụng để tăng hiệu năng của ứng dụng, giảm chi phí xuống ở mức tối thiểu
Bằng cách sử dụng cache và CDN, user không còn phải chờ tải nội dung từ hơn 1000km hoặc từ châu lục này tới châu lục khác.
By caching frequently accessed data in memory, rather than the backend database, applications can deliver highly responsive experiences.
Bằng cách thường xuyên sử dụng cache để lưu trữ data trong bộ nhớ, hơn là sử dụng Backend DB, ứng dụng có thể cung cấp những trải nghiệm tuyệt vời hơn tới User.
Khác với CDN, thay vì mỗi khu vực sẽ có vài ba máy chủ chịu trách nhiệm cache dữ liệu. Distributed ở đây được hiểu như “phân tán, phân phối”, giảm tải nội dung cần cache cho server.
Distributed caching is simply an extension of this concept, but the cache is configured to span multiple servers.
Distributed caching là phần mở rộng phần định nghĩa về cache, nội dung cần cache ở đây sẽ được cấu hình cho nhiều servers khác nhau.
Distributed caching thường được sử dụng cho cloud computing và virtualised environments (môi trường ảo hóa)
2. Sức mạnh tới từ đâu?
2.1 Hiệu năng – Performance
Không thể phủ nhận là khi sử dụng cache, phần hiệu năng cho end user được tăng lên một cách rõ rệt. Trải nghiệm tuyệt vời hơn, không còn thời gian chờ đợi
For a given workload, the cache must meet and sustain the application’s required steady-state performance targets for latency and throughput.
Đối với một công việc nhất định, cache giúp đáp ứng và duy trì các mục tiêu về hiệu năng (độ trễ là mức tải)
2.2 Mở rộng – Scalability
Càng ngày cành nhiều user, nhưng do điều chuyển linh hoạt, không quá focus tập trung vào một server nên thời gian cache không còn là vấn đề.
Không những đáp ứng được về khả năng mở rộng, Distributed cache còn có thể mở rộng nhanh chóng, không ảnh hưởng về mặt tính năng
2.3 Sẵn sàng – Availability
Sử dụng cache còn giúp đỡ về tính sẵn sàng cho toàn hệ thống. Thay vì server down, đang pending chưa thể update hoặc get dữ liệu mới nhất từ server. Có thể lấy từ cache
The cache must ensure the availability of data 24/7 so that data is always available during planned and unplanned downtime.
Cache để giúp đảm bảo tính sẵn sàng 24/7 của data.
2.4 Chi phí – Affordability
Tất nhiên rồi, dùng gì mà chẳng quan tâm tới chi phí. Tuy nhiên, thay vì nâng cấp server, chi phí bỏ ra để thuê các server tỏ ra linh hoạt và tiện dụng hơn.
3. Đọc thêm về Distributed cache
Bài viết gốc được đăng tải tại kieblog.vn
Có thể bạn quan tâm:
- Khi nào nên dùng Golang? Nó dùng tốt trong trường hợp nào?
- [P1] Tổng quan về Distributed Systems
- Hướng dẫn Laravel Model Caching
Xem thêm IT Jobs for Developer hấp dẫn trên TopDev
- B BenQ RD Series – Dòng Màn Hình Lập Trình 4k+ Đầu Tiên Trên Thế Giới
- i iOS 18 có gì mới? Có nên cập nhật iOS 18 cho iPhone của bạn?
- G Gamma AI là gì? Cách tạo slide chuyên nghiệp chỉ trong vài phút
- P Power BI là gì? Vì sao doanh nghiệp nên sử dụng PBI?
- K KICC HCMC x TOPDEV – Bước đệm nâng tầm sự nghiệp cho nhân tài IT Việt Nam
- T Trello là gì? Cách sử dụng Trello để quản lý công việc
- T TOP 10 SỰ KIỆN CÔNG NGHỆ THƯỜNG NIÊN KHÔNG NÊN BỎ LỠ
- T Tìm hiểu Laptop AI – So sánh Laptop AI với Laptop thường
- M MySQL vs MS SQL Server: Phân biệt hai RDBMS phổ biến nhất
- S SearchGPT là gì? Công cụ tìm kiếm mới có thể đánh bại Google?