query_cache_type = 0 so với query_cache_type = 1


7

Gần đây, tôi đã chuyển từ MySQL tiêu chuẩn sang Perconavà sử dụng Trình hướng dẫn Percona để tạo my.cnf.

Tuy nhiên, tôi có thể thấy rằng, theo mặc định, các cài đặt được tạo để my.cnfsử dụng query_cache_type = 0. (bộ đệm truy vấn bị vô hiệu hóa).

Điều duy nhất tôi chạy trên máy chủ là một blog Wordpress. Câu hỏi của tôi là:

  1. Tôi có thể bật bộ đệm truy vấn không?
  2. Có một số plugin Wordpress cung cấp bộ đệm cơ sở dữ liệu. Là kết quả tương tự của việc kích hoạt bộ đệm truy vấn?

Câu hỏi tương tự của cùng một người dùng tồn tại ở 2 nơi. Chúng tôi có thể hợp nhất chúng: stackoverflow.com/questions/14420475/ từ
dhaupin

Câu trả lời:


5

Đối với một blog Wordpress, nó sẽ ổn để thiết lập query_cache_type = 1. Xem, các vấn đề chính với bộ đệm truy vấn là:

  1. Nó vô hiệu hóa rất dễ dàng (mọi cập nhật trên một số bảng đều làm mất hiệu lực tất cả các truy vấn liên quan đến bảng đã nói)

  2. Nó có một mutex duy nhất mà bất kỳ truy vấn đến hoặc đi nào cũng phải trải qua.

Bộ đệm truy vấn vẫn ổn trong những ngày mà máy có một lõi, có thể hai; nó không phù hợp với nhiều lõi và tính đồng thời cao, và nó cũng không phù hợp với các ứng dụng chuyên sâu.

Blog Wordpress của bạn không có khả năng viết chuyên sâu: bài viết của bạn là bài viết mới, cập nhật, bình luận ... Có bao nhiêu trong số này? Bạn thậm chí có thể không truy cập chúng trên cơ sở mỗi phút ...

Nó thực sự sẽ không được đọc chuyên sâu. Hàng trăm lượt đọc mỗi ngày Hàng ngàn? Không có gì.

Đối với các plugin, điều đó phụ thuộc rất nhiều vào plugin và vào việc triển khai của bạn. Wordpress được viết bằng PHP và PHP có thể sử dụng các cơ chế bộ đệm như hệ thống tệp, memcached hoặc APC. Nó thường là bộ nhớ đệm "tốt hơn" cho mục đích cụ thể mà nó được định hướng. Đó là, nó sẽ làm mất hiệu lực dữ liệu được lưu trong bộ nhớ cache dựa trên những thay đổi thực sự đối với dữ liệu có liên quan - không dành cho các hoạt động không liên quan trên một số bảng. Các lập trình viên của plugin sẽ cần phải quyết định phần dữ liệu nào là quan trọng đối với bộ đệm, cái nào không, tính hợp lệ hoạt động như thế nào.

Một lần nữa, trong quy mô của một blog, điều này không phải là vấn đề lớn và không nên tạo ra sự khác biệt đáng kể (tất nhiên luôn có thể có một số plugin điên rồ).

Điểm mấu chốt: cho nhu cầu của bạn, bất cứ điều gì đi và nó không quan trọng nhiều.


0

Nó phụ thuộc vào loại DB của bạn. Nếu bạn sử dụng InnoDB, bộ đệm truy vấn không bắt buộc. Hơn nữa, bộ đệm truy vấn gây hại cho tốc độ của hiệu suất tổng thể. Do đó, nếu bạn sử dụng MyISAM cho wordpress, bạn nên sử dụng nó.

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.