2008-10-12 52 views
5

Đối với một trang web LAMP đơn-máy chủ (thường là dưới tải khá cao), cách tốt nhất để sử dụng memcache là gì?Cách tốt nhất để sử dụng memcache với ứng dụng một máy chủ là gì?

Có ý nghĩa khi chạy trình memcache daemon trên cùng một máy chủ với ứng dụng hay là chỉ lấy bộ nhớ có giá trị khỏi MySQL, làm mất hiệu năng ròng. Liệu nó thậm chí có ý nghĩa để sử dụng memcache trong kịch bản này hay là giải pháp tốt nhất để luôn có các máy chủ chuyên dụng cho memcache?

Tôi đánh giá cao việc lập cấu hình trang web trước và sau sẽ được yêu cầu thực sự trả lời câu hỏi này, nhưng tôi không muốn làm điều đó ở giai đoạn này trên trang web trực tiếp. Đặc biệt là một người nào đó ra khỏi đó chắc chắn biết câu trả lời ra khỏi đỉnh đầu của họ.

Trả lời

10

Thông thường, đề nghị (xem gì về bộ nhớ chia sẻ? trong memcached page) là để chạy memcached trên các máy tương tự như các máy chủ web, trên tiền đề rằng các ứng dụng web là CPU-nặng (mà memcached không), trong khi memcached là bộ nhớ nặng (mà hầu hết các ứng dụng web không, ít nhất là trong so sánh).

Vì vậy, nếu máy chủ web của bạn có nhiều bộ nhớ, bạn nên chạy memcached trên bộ nhớ. YMMV.

0

Tùy chọn khác để ghi nhớ - tùy thuộc vào thang đo thông tin bạn đang lưu trong bộ nhớ cache, là bộ nhớ đệm trong APC. Bạn nên chạy (hoặc bộ nhớ cache mã op tương tự) để giúp tăng tốc độ phân phối trang PHP, vì vậy nếu bạn đang lưu vào bộ nhớ đệm ở đâu đó từ một vài, nhỏ hơn một trăm hoặc nhỏ hơn (tôi có khoảng 15KB mỗi cái) , trong số hơn 70 biến) tại một thời điểm, bạn có thể tìm thấy một số lợi ích để lưu trữ chúng trong APC.

Tôi có một trang web lưu trữ một số tra cứu DB và lưu trữ tệp config.ini sau phân tích - và trên trang web (bận) của tôi, tôi sẽ lưu hàng triệu lượt truy cập DB tiềm năng mỗi ngày.

Các vấn đề liên quan