Xóa bộ nhớ cache REDIS


Câu trả lời:


12

Nút "Flush Magento Cache" sẽ chỉ xóa các bản ghi bộ đệm dựa trên các thẻ của chúng. Điều này sử dụng Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAGchế độ khi gọi sạch trên bộ đệm phụ.

Nút "Flush Cache Storage" sẽ xóa toàn bộ sao lưu bộ đệm (trong đó phần phụ trợ hỗ trợ nó), sử dụng Zend_Cache::CLEANING_MODE_ALLchế độ khi gọi sạch trên phần phụ trợ bộ đệm.

Các Cm_Cache_Backend_Redis không phân biệt giữa hai chế độ và đúng cách xử lý cả hai.

Điều gì xảy ra trong Redis khi "Bộ nhớ cache" bị xóa:

1380734058.807909 [0 127.0.0.1:61926] "flushdb"

Điều gì xảy ra ở Redis khi "Magento Cache" bị xóa trông giống như thế này ...

1380733999.123304 [0 127.0.0.1:61889] "sunion" "zc:ti:541_MAGE"
1380733999.127239 [0 127.0.0.1:61889] "multi"
1380733999.127294 [0 127.0.0.1:61889] "del" "zc:k:541_APP_E4D52B98688947405EDE639E947EE03D" "zc:k:541_CORE_CACHE_OPTIONS" ... etc ...
1380733999.127493 [0 127.0.0.1:61889] "del" "zc:ti:541_MAGE"
1380733999.127523 [0 127.0.0.1:61889] "srem" "zc:tags" "541_MAGE"
1380733999.127547 [0 127.0.0.1:61889] "exec"
1380733999.128596 [0 127.0.0.1:61889] "sunion" "zc:ti:541_CONFIG"
1380733999.131160 [0 127.0.0.1:61889] "multi"
1380733999.131192 [0 127.0.0.1:61889] "del" "zc:k:541_CONFIG_GLOBAL_ADMIN" "zc:k:541_ENTERPRISE_LOGGING_CONFIG" ... etc ...
1380733999.131360 [0 127.0.0.1:61889] "del" "zc:ti:541_CONFIG"
1380733999.131379 [0 127.0.0.1:61889] "srem" "zc:tags" "541_CONFIG"
1380733999.131397 [0 127.0.0.1:61889] "exec"

Bạn sẽ nhận thấy rằng trong lệnh đầu tiên, một lệnh đơn được xử lý bởi Redis so với ví dụ sau trong đó hai tiền tố bộ đệm được sử dụng để xóa tất cả các bản ghi bộ đệm được liên kết. Dựa trên những gì tôi thấy ở đây (và trong mã), cả hai tiền tố '541_MAGE' và '541_CONFIG' được tuôn ra trong các cuộc gọi riêng biệt đến phụ trợ bộ đệm, với cấu hình ngay lập tức theo sau.


Điều duy nhất tôi không xác minh được là việc dọn dẹp đúng cách cả hai cơ sở dữ liệu, nhưng tôi nghĩ sẽ an toàn khi cho rằng nó không xảy ra, vì tôi không gặp rắc rối với nó
davidalger

Bạn có thể sử dụng flushallcho tất cả mọi thứ hoặc flushdbcho một cơ sở dữ liệu cá nhân.
Steve Robbins

9

Tôi đã tạo một mô-đun cho phép bạn thực hiện nhiều thao tác hàng loạt hơn từ quản trị viên. Nhấp vào "Flush DB" sẽ thực sự thực hiện flushdblệnh.

nhập mô tả hình ảnh ở đây

Tải xuống: https://github.com/steverobbins/Magento-Redismanager

Nếu không, bạn phải sử dụng dòng lệnh để tuôn ra chúng "hoàn toàn"


2

Để thực sự trả lời câu hỏi của bạn: "Sẽ có một trong các nút FLUSH REDIS?"

CÓ là câu trả lời, bạn có thể xóa bộ nhớ cache của Magento thông qua quản trị viên. Bạn cũng có thể tuôn ra từ dòng lệnh, nhưng đó không phải là câu hỏi của bạn ...

Không chắc chắn lý do tại sao điều này được bỏ phiếu ... nếu bạn sử dụng đúng cách redis cho bộ đệm trong phần phụ trợ thì nó sẽ hoạt động.

Bạn cũng nên có

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.