Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Cơ Sở Dữ Liệu

5 Use Case Redis thiết yếu cho Applications có khả năng Scale

Trong bài này, chúng tôi giải thích các use case Redis phổ biến nhất và các đặc điểm khác nhau ảnh hưởng đến lựa chọn này.

1. Session Cache

Một trong những use case rõ ràng nhất cho Redis là dùng làm session cache. Lợi thế của Redis so với session store khác như Memcached là Redis cung cấp persistence. Dù maintain cache thường không mission-critical về consistency, nhưng người dùng chắc chắn không thích nếu tất cả cart session biến mất, phải không?

May mắn là, với sự phổ biến của Redis những năm qua, khá dễ tìm documentation cách dùng Redis cho session caching. Thậm chí platform ecommerce nổi tiếng Magento cũng có plugin cho Redis!

2. Full Page Cache (FPC)

Ngoài basic session tokens, Redis cung cấp platform FPC rất dễ vận hành. Quay lại consistency, ngay cả khi restart Redis instances, với disk persistence user không thấy giảm speed page loads - thay đổi lớn so với PHP native FPC.

Lấy Magento làm ví dụ nữa, Magento cung cấp plugin dùng Redis làm full page cache backend.

Cũng vậy, cho WordPress users, Pantheon có plugin tuyệt vời tên wp-redis giúp achieve fastest page loads ever!

3. Queues

Tận dụng in-memory storage engine của Redis để làm list và set operations khiến nó thành platform tuyệt vời cho message queue. Tương tác với Redis như queue sẽ native với ai quen dùng push/pop operations với lists trong Python.

Nếu search "Redis queues" trên Google, sẽ thấy hàng tá open-source projects nhằm làm Redis thành awesome backend utility cho mọi queuing needs. Celery, ví dụ, có backend dùng Redis as broker.

4. Leaderboards/Counting

Redis làm increments/decrements tuyệt vời vì in-memory. Sets và sorted sets cũng làm dễ dàng các operation kiểu này, và Redis cung cấp cả hai data structure. Để pull top 10 users từ sorted set - gọi là "user_scores" - chỉ cần chạy:

ZRANGE user_scores 0 10

Giả định bạn rank user trên incremental score. Nếu muốn return cả user và score:

ZRANGE user_scores 0 10 WITHSCORES

Agora Games có ví dụ tuyệt vời dùng Ruby, leaderboard dùng Redis làm datastore.

5. Pub/Sub

Cuối cùng (nhưng chắc chắn không kém quan trọng) là Pub/Sub feature của Redis. Use cases cho Pub/Sub thực sự boundless. Tôi thấy người dùng cho social network connections, trigger scripts dựa trên Pub/Sub events, thậm chí chat system built dùng Redis Pub/Sub!

Trong tất cả features Redis cung cấp, tôi cảm thấy feature này luôn nhận ít love nhất, dù nó offer rất nhiều cho users.

More Redis Resources

Bạn dùng Redis giải quyết use case nào? Chúng tôi sẵn sàng hỗ trợ Redis use cases của bạn. Xem Redis hosting offerings hoặc email chúng tôi để setup chat về data infrastructure và cách chúng tôi giúp.