it-swarm-vi.tech

Thu nhỏ WP trang web thương mại điện tử

Liên quan đến câu hỏi này .

Bất kỳ đề xuất nào về các công cụ, plugin để tối ưu hóa một trang web thương mại điện tử lớn trên WP. Hiện đang đạt 1000 mặt hàng và 5000 mặt hàng sắp tới. Có vẻ như việc tối ưu hóa sẽ khác với một blog tiêu chuẩn phục vụ hàng ngàn người dùng. Số lượng cửa hàng đang được phát triển trên WP đang tăng lên và đặt một gói tối ưu hóa cùng nhau sẽ có vẻ hữu ích.

MM/RC

5
RealityCramp

Tôi đã phát triển trang web thương mại điện tử sản phẩm 55 nghìn bằng Wordpress với plugin Shopp và có thể chia sẻ những gì tôi đã làm với MySQL để tăng hiệu suất tốt hơn, YMMV và một số (hoặc tất cả) trong số này có thể không áp dụng cho tình huống của bạn.

Xác định mức độ bạn cần để tăng bộ đệm/bộ đệm bằng cách xem kết quả đầu ra từ lệnh sql "hiển thị trạng thái" - có những công cụ giúp tăng sản lượng này có thể hữu ích, tôi thường chỉ sử dụng phpmyadmin để có ý tưởng. http://blog.mysqltuner.com/ cũng là một tài nguyên và tiện ích tiện dụng.

Đảm bảo rằng bộ đệm truy vấn của bạn được bật và nó đủ lớn để có số punes bộ nhớ rất thấp. Đảm bảo số lần đọc khóa của bạn không quá cao (đây là một giá trị tương đối), việc tăng key_buffer_size có thể giúp ích cho điều đó. Đảm bảo rằng số lượng bảng tạm thời được tạo thấp, giảm số lượng đó bằng cách tăng tmp_table_size.

Bật nhật ký truy vấn chậm và ghi nhật ký truy vấn chậm, chạy lại các truy vấn đó theo cách thủ công với câu lệnh giải thích, thêm chỉ mục thay đổi loại cột, v.v., nếu cần. Đối với một truy vấn, chúng tôi đã nhận được các câu lệnh giải thích điên rồ (như so sánh nhiều, nhiều hàng hơn so với "nên"), việc nâng cấp lên phiên bản MySQL mới hơn khiến cho cùng một truy vấn được tối ưu hóa tốt hơn (và nhanh hơn nhiều) chinh no.

Nếu bạn đang sử dụng lập chỉ mục toàn văn bản, tôi không tin các bảng InnoDB là một tùy chọn - chỉ không cập nhật sản phẩm trong thời gian bận rộn của bạn. Nếu gói thương mại điện tử của bạn hỗ trợ, bạn có thể giảm thiểu sự gián đoạn của khách hàng (hiệu suất hoặc cách khác) bằng cách thay đổi trên máy chủ dàn của mình và sau đó chuyển qua các bảng sản phẩm với một kết xuất từ ​​giai đoạn và tải vào sản xuất - điều này sẽ tuy nhiên không hoạt động mà không có một số công việc bổ sung cho phần còn lại của quá trình cài đặt Wordpress của bạn.

Nếu thiết kế trang web của bạn và UX có thể hỗ trợ nó hướng dẫn người dùng vào chế độ "duyệt" so với chế độ "tìm kiếm" (ví dụ: nhấp xung quanh trang web so với nhập tìm kiếm vào hộp tìm kiếm) có thể giúp bạn tận dụng một số cơ sở dữ liệu rất dễ dàng cấp độ và bộ nhớ đệm cấp độ Wordpress.

Tải trước bộ đệm của bạn - bộ đệm dễ dàng như bộ đệm truy vấn và bộ đệm cấp Wordpress cũng có thể được tải trước bằng cách làm hỏng trang web của bạn với wget. Bạn cũng có thể tải trước bộ đệm cho các tìm kiếm bằng cách sử dụng hành vi tìm kiếm của người dùng (thông qua nhật ký của bạn) và nhận lại các yêu cầu đó khi bạn cần điền vào bộ đệm.

11
bsr

Tôi tò mò về nhận xét của riêng tôi và đã đọc một số, đây là nơi tôi đang ở.

Trước hết, tôi sẽ thử W3 Total Cache thử. Ngoài ra, cài đặt tiện ích mở rộng APC PHP trên máy chủ của bạn và đặt W3 Total Cache để sử dụng nó. Nó sẽ sử dụng APC để lưu trữ các đối tượng cơ sở dữ liệu, PHP, thậm chí giúp giảm thiểu CSS và JS của bạn. Nó có thể cung cấp đủ. Đặc biệt là nếu bạn kết hợp một số bộ đệm MySQL. W3 Total Cache cũng có thể hoạt động với Memcache dưới dạng phụ trợ bộ đệm.

Đối với Cơ sở dữ liệu, lưu trữ các truy vấn là rất hữu ích. Tôi đã tìm thấy liên kết này và anh ấy giải thích cách anh ấy đã làm điều gì đó cho blog MU của mình. Để trích:

Cache truy vấn là một tính năng nhỏ tiện lợi trong MySQL, nơi nó lưu trữ - trong một bộ dành riêng nằm trong bộ nhớ chính - bất kỳ kết quả truy vấn nào cho một bảng không thay đổi gần đây.

Đó là, giả sử một yêu cầu xuất hiện để lấy một hàng cụ thể trong một bảng - và bảng đó gần đây không được sửa đổi theo bất kỳ cách nào - và bộ đệm không được lấp đầy yêu cầu thanh lọc/làm sạch - có thể đáp ứng truy vấn/dữ liệu bộ nhớ cache. Tất nhiên, lợi ích chính ở đây là thỏa mãn yêu cầu - cơ sở dữ liệu không cần phải vào đĩa (thường là phần chậm nhất của hệ thống) và có thể được thỏa mãn ngay lập tức.

Vì vậy, điều này là khá tuyệt, và sẽ giúp ích rất nhiều vì bản thân các sản phẩm sẽ không thay đổi nhiều. Một điều khác mà bài viết đề cập là đảm bảo bạn có nhiều bộ nhớ để giữ cơ sở dữ liệu trong Ram, điều này sẽ giúp tăng tốc các truy vấn một cách đáng kể.

Anh ta cũng nói về các loại bảng và sử dụng MyISAM trên InnoDB cho các bảng chủ yếu chỉ đọc, trong khi điều này anh ta suy luận là một chút định hướng MU, nó có thể hữu ích.

Liên quan đến việc thiết lập các chỉ mục. Nếu bạn có nhiều trong số chúng, chúng có thể làm chậm các phần chèn và chiếm nhiều dung lượng đĩa hơn. Nhưng như tôi không tưởng tượng một lượng lớn sản phẩm được thêm vào một cách thường xuyên, tôi nghĩ rằng điều này có thể chấp nhận được. Và với không gian đĩa rẻ ...

1
Ryan Gibbons