Cách cấu hình máy chủ với 4g bộ nhớ để chạy drupal 7


9

Tôi đang cài đặt Drupal 7 trên máy chủ mới có bộ nhớ 4 GB. Tôi muốn nhận được một số gợi ý về cách định cấu hình đúng, dung lượng bộ nhớ cần cung cấp cho MySQL và dung lượng bộ nhớ để cung cấp cho PHP. Một điều tôi phát hiện ra là việc chạy Drupal 7 trên máy chủ Zend nhanh hơn ba lần so với chạy trên máy chủ Apache bình thường. (Tôi nghĩ rằng nó phải làm với bộ nhớ đệm opcode. Tôi nhận thấy với mô-đun phát, nó sử dụng một phần ba bộ nhớ.

Bạn có thể chia sẻ cấu hình của bạn với tôi?

Câu trả lời:


5

Nếu bạn đã có Dữ liệu Drupal7, bạn nên tải nó vào môi trường dàn dựng và thực hiện một số kích thước bộ đệm dựa trên lượng dữ liệu bạn có.

Bước 1) Trước tiên, bạn phải tính toán kích thước bộ đệm cho tập dữ liệu của mình .

Bước 2) Nếu kích thước được đề xuất vượt quá 75% RAM đã cài đặt của bạn (trong trường hợp bạn là 3 GB) thì hãy giới hạn bộ đệm cần thiết ở mức 3 GB.

Bước 3) Nếu bạn có dữ liệu InnoDB và bạn không kích hoạt innodb_file_per_table, bạn cần dọn dẹp InnoDB bằng cách phân đoạn mỗi bảng thành không gian bảng vật lý của riêng mình (điều này chỉ cần thực hiện một lần) .

Khi bạn đã hoàn thành việc này, bạn nên lập kế hoạch để thực hiện kiểm toán cấu hình này (Bước 1 và 2) mỗi 6 tháng để đảm bảo bạn có bộ nhớ cache MySQL phù hợp.

Thật thú vị, tôi đã giải quyết một câu hỏi tương tự như thế này và trả lời nó vào ngày 15 tháng 4 năm 2011 .


4

Một số điều cần xem xét :

Một bài viết để đọc :

Rackspace's: Triển khai Drupal trên đám mây với nginx và boost sẽ cung cấp cho bạn rất nhiều ý tưởng.

Báo giá nhỏ về bộ nhớ đệm opcode:

Chúng tôi sử dụng APC như một bộ đệm opcode. Điều này lưu máy chủ khỏi biên dịch lại mã PHP trên mỗi lần tải trang. Hơn nữa, toàn bộ điều này phù hợp dễ dàng trong RAM (chúng tôi thường cung cấp cho APC 128 MB RAM). Điều này làm giảm đáng kể việc sử dụng CPU. Người dùng đã đăng nhập giờ đây có thể duyệt trang web nhanh hơn nhiều. Nhưng chúng ta vẫn chỉ có thể xử lý một số lượng hạn chế trong số họ. Chúng ta có thể làm tốt hơn một chút. Thay vì truy vấn MySQL mỗi khi chúng ta vào bộ đệm, chúng ta có thể lưu trữ các bảng này trong bộ nhớ. Ở đây có memcached và mô-đun cacherouter.


2

Tôi bắt đầu với my_huge conf từ thư mục mysql; Tôi cũng đã thêm bộ nhớ cache Varnish vào hỗn hợp. Như bạn đã tìm ra, Zend cải thiện rất nhiều hiệu suất.

Sau khi chạy được vài ngày, tôi đã chạy tập lệnh mysqltuner và hành động theo một số khuyến nghị, chủ yếu là về bộ đệm bảng tạm thời.


1

Tùy thuộc vào kích thước của trang web mà bạn có thể muốn xem memcached là tốt. Điều này sẽ cạnh tranh tài nguyên với mysql nhưng có thể giảm tải cho nó.


Trên thực tế, bạn có thể thu nhỏ cả Bộ đệm InnoDB và Bộ đệm chính MyISAM nếu memcached đủ lớn. Theo cách đó, memcached không cạnh tranh với mysql, nhưng mysql sẽ chỉ bổ sung cho memcached như một ống dẫn dữ liệu chứ không phải là cơ sở dữ liệu chính. +1 để đề xuất memcached trước !!!
RolandoMySQLDBA
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.