Có một api phổ biến như vậy mà nếu tôi chuyển đổi giữa Redis hoặc Memcached tôi không phải thay đổi mã của tôi, chỉ cần một thiết lập cấu hình?Đường ray và bộ nhớ đệm, có dễ dàng chuyển đổi giữa memcache và redis không?
Trả lời
Chừng nào bạn không khởi client Memcached mình nhưng bạn dựa vào Rails.cache
API phổ biến, chuyển từ memcached để Redis chỉ là vấn đề của việc cài đặt redis-store và thay đổi cấu hình từ
config.cache_store = :memcached_store
để
config.cache_store = :redis_store
Thêm info about Rails.cache.
Tôi ghét gây rối với mục tiêu của mình, nhưng tôi khuyên bạn không nên sử dụng redis trên memcached cho bộ đệm đường ray chung.
Tôi sử dụng redis và resque rộng rãi trong một ứng dụng đường ray lớn và tôi nghĩ rằng nó sẽ là tốt đẹp để củng cố bộ nhớ đệm, redis liệu và resque thành một. Tôi gặp phải một vài vấn đề lớn:
- Trước hết, nó chậm hơn. Nó có thể hoàn toàn là cách sử dụng cụ thể của tôi, thư viện redis-store hoặc redis. Tôi sẽ không badmouth bất cứ điều gì và mileage của bạn có thể khác nhau, nhưng nó sẽ hút đổ rất nhiều thời gian chuyển sang redis khi memcached "chỉ hoạt động"
- Memcached là tốt đẹp vì nó rất dễ dàng để thêm máy chủ và sử dụng băm phù hợp để đạt được mục tiêu của bạn. Redis cũng có điều này, nhưng theo kinh nghiệm của tôi, rất khó để xử lý đồng thời redis như một kho dữ liệu nguyên khối trong một số phần của ứng dụng của tôi và trong các phần khác.
Chúc bạn may mắn với dự án của mình. Tôi yêu redis và memcached và sử dụng chúng trong tất cả các dự án của tôi, nhưng tôi để cho một trong những công việc như một máy chủ cấu trúc dữ liệu kick-ass và để cho người khác đá ass vào bộ nhớ đệm.
http://seal-7.blogspot.com/2011/11/rails-benchmarking-reloaded.html –
memcached có thông lượng nhiều hơn Redis như một cửa hàng khóa-giá trị đơn giản vì memcached là đa luồng và Redis là đơn luồng . Vì vậy, Redis sẽ sớm tiêu thụ 100% sử dụng một lõi CPU đạt hiệu suất cao nhất trong khi memcached sẽ sử dụng hạnh phúc như nhiều lõi CPU như bạn có và do đó quy mô cao hơn nhiều trong thông lượng tối đa của nó. Trên một hệ thống đơn lõi (những người sử dụng?) Redis có thể nhanh hơn, nhưng Redis thực sự chỉ mang lại lợi ích khi bạn sử dụng các loại dữ liệu bổ sung hoặc tính kiên trì hoặc các tính năng khác. – ColinM
Điều này thực sự không giải quyết được câu hỏi, và hơn thế nữa tôi không nghĩ rằng kinh nghiệm một lần của bạn đảm bảo chống lại việc sử dụng Redis cho bộ nhớ đệm, vì có vẻ như rất nhiều người đang sử dụng nó thành công cho chính xác điều đó. – Yarin
Các phần gọn gàng của Redis bao gồm bộ nhớ đệm "danh sách dựa trên" những thứ - đẩy/popping những thứ từ danh sách này khi chúng xảy ra trong ứng dụng của bạn.
Thay vì hủy tuần tự hóa một giá trị lớn từ memcached, chỉnh sửa nó, sau đó tái serialize nó.
Điều này sẽ được thực hiện bằng mã ruby trong bộ lọc tùy chỉnh, so với bộ nhớ cache đường cơ bản.
- 1. So sánh memcache, redis và ehcache dưới dạng khung bộ nhớ đệm được phân phối
- 2. Cách dễ dàng để đổi tên bộ điều khiển đường ray
- 3. Chuyển đổi CSS3 Dễ dàng vào và ra Hộp bóng
- 4. Làm cách nào để chuyển đổi giữa đường ray 3.2.13 và đường ray 4.0.0?
- 5. lỗi bộ chuyển đổi đường ray sqlite
- 6. Memcache có sử dụng bộ nhớ đĩa không?
- 7. Làm cách nào để sử dụng nhiều bộ đệm trong đường ray? (thực tế)
- 8. Có cách nào dễ dàng để chuyển đổi "do/end" và "{}" trong ruby trong Vim?
- 9. Sự khác nhau giữa bộ nhớ đệm và bộ nhớ cache trống là gì?
- 10. Cách sử dụng nhiều bộ đệm trong đường ray?
- 11. đường ray 3.1 tài nguyên đường ống css bộ nhớ đệm trong phát triển
- 12. không thể hiểu cách redis hoạt động với đường ray
- 13. <ui: param và bộ nhớ đệm
- 14. dữ liệu URI và bộ nhớ đệm
- 15. Dễ dàng tạo bộ nhớ bị cô lập
- 16. Cách dễ dàng để đồng bộ dữ liệu giữa MongoDB và Apache Solr
- 17. Hibernate EHCache và MemCache
- 18. đường ray 3.0.7 rò rỉ bộ nhớ
- 19. Dễ dàng chuyển đổi "Xem bộ điều khiển" trong ứng dụng Mac (tương tự như iOS)
- 20. Dễ dàng sử dụng các tiện ích con bị cô lập trên đường ray
- 21. Đường gạch dưới HTML dễ dàng
- 22. Đường ray có trong cơ sở dữ liệu bộ nhớ
- 23. Sự khác biệt giữa bộ nhớ đệm bảo thủ và bộ đệm ẩn tiến bộ trong joomla 2.5 là gì?
- 24. Cách dễ dàng để chuyển đổi mã c thành x86?
- 25. Cách dễ dàng chuyển đổi từ WinForms sang WPF
- 26. Chuyển đổi giữa các phiên bản đường ray khác nhau trong cùng một bộ đá quý
- 27. Tuyến đường và tuyến đường ray Ember
- 28. Đường ray 3: Sự khác biệt giữa Relation.count và Relation.all.count
- 29. Chia sẻ bộ nhớ giữa Dịch vụ và Ứng dụng Windows, điều gì là dễ nhất?
- 30. tập tin âm thanh Streaming và bộ nhớ đệm nó
Làm thế nào để người dùng có thể sử dụng Redis cho cả bộ đệm bộ nhớ đệm và công việc Sidekiq mà không hết bộ nhớ? Có thể sử dụng cùng một cá thể Redis để luôn duy trì công việc của Sidekiq, nhưng sử dụng một lần đầu tiên-trong-đầu ra cho các mảnh? – Mohamad