Sử dụng Drupal 7 với APC, Varnish và Memcache, những thùng nào để đặt vào bộ đệm nào?


12

Tôi đang tối ưu hóa trang web Drupal 7 và tôi có véc ni, memcache và APC đều được cài đặt và làm việc với các mô-đun Drupal 7 riêng lẻ của họ. Trong cài đặt của tôi. Tôi có các $conftùy chọn bên dưới.

Câu hỏi của tôi là để có hiệu suất tốt hơn và tất cả các bộ đệm này hoạt động tốt, tôi có cần thêm nhiều tùy chọn cấu hình không?

Các readme của mô-đun thường giả định một hệ thống bộ đệm duy nhất. Có bất kỳ tweks nào cần thiết để có hiệu suất tốt hơn khi chạy 3 phụ trợ bộ nhớ đệm riêng biệt không?

// Add Varnish as the page cache handler.
$conf['cache_backends'][] = 'sites/all/modules/varnish/varnish.cache.inc';
$conf['cache_class_cache_page'] = 'VarnishCache';
// Drupal 7 does not cache pages when we invoke hooks during bootstrap.
// This needs to be disabled.
$conf['page_cache_invoke_hooks'] = FALSE;

$conf['cache_backends'][] = 'sites/all/modules/apc/drupal_apc_cache.inc';
$conf['cache_class_cache'] = 'DrupalAPCCache';
$conf['cache_class_cache_bootstrap'] = 'DrupalAPCCache';
//$conf['apc_show_debug'] = TRUE;  // Remove the slashes to use debug mode.

$conf['cache_backends'][] = 'sites/all/modules/memcache/memcache.inc';
$conf['cache_default_class'] = 'MemCacheDrupal';
$conf['cache_class_cache_form'] = 'DrupalDatabaseCache';

Dường như với tôi trang dự án cho APC trả lời câu hỏi của bạn khá tốt.
Letharion

Có, tôi sẽ thực hiện lời khuyên này ... "Sử dụng APC cho các bộ đệm không thay đổi thường xuyên và sẽ không phát triển quá lớn để tránh phân mảnh. Cài đặt mặc định của APC sẽ cho phép bạn ..", nhưng tôi vẫn hỏi điều này câu hỏi vì nó cũng không giải thích cho Varnish, có thể có một số thay đổi cấu hình cụ thể mà tôi đang thiếu, tôi sẽ đăng chính xác những gì tôi kết thúc sử dụng.
dùng1073319

Câu trả lời:


6

Có vẻ ổn với tôi.

Những gì bạn có thể thử là chơi xung quanh với các tùy chọn Memcache. Ví dụ, có một cờ nén nhưng nó thường phụ thuộc vào trang web nếu nó có ý nghĩa để kích hoạt nó bởi vì sau đó bạn có mức sử dụng cpu cao hơn để thực hiện nén / giải nén.

Tôi cũng nghĩ rằng cờ page_cache_invoke_hooks không còn cần thiết nữa, xem http://drupal.org/node/804864 . Nếu bạn không cần những cái móc đó để chạy thì bạn có thể thiết lập nó, nhưng nó không còn cần thiết nữa để Varnish hoạt động.

Sử dụng bộ đệm APC với nhiều máy chủ web có nghĩa là bạn gặp phải sự không nhất quán khi xóa bộ nhớ cache trên một máy chủ, vì vậy nếu bạn có nhiều bộ đệm, có lẽ bạn cũng muốn sử dụng Memcache cho bộ đệm và cache_bootstrap. Tôi cũng gặp vấn đề về tính ổn định khi sử dụng bộ đệm APC nhưng tôi đã sử dụng nó cho tất cả các bộ đệm, đây có thể là vấn đề.


Có bất kỳ vấn đề với việc sử dụng nhiều hơn một hệ thống bộ nhớ đệm như apc, memcache, vv?
chrisjlee

Không, bạn có thể trộn chúng khi bạn nhìn. Bạn có thể đặt một thùng bộ đệm nhỏ hơn như 'bộ đệm' trong APC nhanh hơn nhưng thường không có nhiều dung lượng và đặt những cái lớn hơn vào memcache.
Berdir

Cảm ơn. Bạn có biết nơi tôi có thể tìm ra cách để làm điều đó?
chrisjlee

Mỗi thùng bộ đệm có thể được cấu hình để sử dụng một phụ trợ bộ đệm cụ thể, hầu hết các phụ trợ bộ đệm đều có tài liệu về cách định cấu hình chúng và bạn có thể kết hợp nó theo ý muốn.
Berdir

2

Tôi đang chạy một thiết lập tương tự với các máy chủ memcache và Varnish cục bộ trên mỗi máy chủ web. Tôi nghĩ rằng bộ nhớ đệm trang cục bộ với Varnish sẽ không hiệu quả như sử dụng memcache.

Tôi đang xem xét sử dụng MongoDB cho một cái gì đó vì tôi cũng đang chạy nó và nó cũng là một tài nguyên được chia sẻ.

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.