Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Các phương pháp hay nhất để tối ưu hóa trang web LAMP để tăng tốc độ?

Đây là một số việc cá nhân phải làm mà tôi luôn thiết lập trong các ứng dụng LAMP của mình.

  • Cài đặt mod_deflate cho apache và không sử dụng trình xử lý gzip của PHP .mod_deflate sẽ cho phép bạn nén nội dung tĩnh, nhưjavascript / css / static html, cũng như đầu ra PHP động thông thường, và đó là một điều bạn ít phải lo lắng về mã của mình.

  • Hãy cẩn thận với tệp .htaccess! Việc bật tệp .htaccess cho thư mục trong ứng dụng của bạn có nghĩa là Apache phải quét hệ thống tệp ngay lập tức, tìm kiếm .htaccessdirectives. Tốt hơn là nên đặt các kích hoạt bên trong cấu hình chính hoặc cấu hình vhostcon, nơi chúng được tải. Bất kỳ lúc nào bạn có thể loại bỏ tệp truy cập cấp độ thư mục bằng cách chuyển tệp này vào tệp cấu hình chính, bạn sẽ tiết kiệm thời gian truy cập đĩa.

  • Chuẩn bị trình dữ liệu của ứng dụng của bạn để sử dụng một trình quản lý kết nối nào đó (Tôi sử dụng một ứng dụng mạnh nhất của Singleton). Việc này không quá khó và việc giảm số lượng kết nối cơ sở dữ liệu mà bạn mở ứng dụng sẽ tiết kiệm tài nguyên.

  • Nếu bạn nghĩ rằng ứng dụng của mình sẽ tải đáng kể, thì memcached có thể hoạt động tốt hơn. Hãy ghi nhớ điều này trong khi bạn viết mã của mình ... perhapsone day thay vì tạo objectson nhanh chóng, bạn sẽ nhận được chúng từ memcached. Một chút tầm nhìn xa sẽ giúp việc triển khai không đau đớn.

  • Sau khi ứng dụng của bạn bắt đầu và đang chạy, thời gian truy vấn chậm của setMySQL đến một con số nhỏ và theo dõi truy vấn chậm một cách nhanh chóng. Điều này sẽ cho bạn biết các truy vấn vấn đề của bạn đến từ đâu và cho phép bạn tối ưu hóa các truy vấn và chỉ mục của mình trước khi chúng phát sinh vấn đề.

  • Đối với những bộ loa hiệu suất cao, bạn sẽ muốn biên dịch PHP từ nguồn. Việc cài đặt từ một gói sẽ cài đặt rất nhiều thư viện mà bạn có thể không bao giờ sử dụng đến. Vì các môi trường PHP được tải vào mọi trường hợp của luồng anApache, ngay cả đầu thừa bộ nhớ 5MB từ các thư viện bổ sung cũng nhanh chóng dẫn đến 250MB bộ nhớ bị mất khi không có 50 luồng Apache. Tôi giữ một danh sách các dòng ./configure tiêu chuẩn mà tôi sử dụng khi xây dựng PHP tại đây , và tôi thấy nó phù hợp với hầu hết các ứng dụng của tôi. Nhược điểm là nếu bạn kết thúc một thư viện, bạn phải biên dịch PHP để có được nó. Phân tích mã của bạn và kiểm tra nó trong một môi trường phát triển để đảm bảo rằng bạn có mọi thứ bạn cần.

  • Giảm thiểu Javascript của bạn.

  • Hãy chuẩn bị để di chuyển nội dung tĩnh, chẳng hạn như hình ảnh và video, sang máy chủ web không động. Viết mã của bạn để mọi URL cho hình ảnh và video có thể dễ dàng được định cấu hình để trỏ tới một máy chủ khác trong tương lai. Máy chủ Aweb được tối ưu hóa cho nội dung tĩnh có thể dễ dàng phục vụ nhanh hơn hàng chục hoặc hàng trăm lần so với máy chủ nội dung động.

Đó là những gì tôi có thể nghĩ ra trên đỉnh đầu của mình. Tìm kiếm trên Google các phương pháp hay nhất về PHP cũng sẽ tìm thấy rất nhiều mẹo về cách viết mã nhanh hơn / tốt hơn (Chẳng hạn như:echo nhanh hơn print ).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql - Tạo hiệu suất hàng so với cột

  2. Làm cách nào để sửa cây MPTT bị hỏng (tập hợp lồng nhau) trong cơ sở dữ liệu bằng cách sử dụng SQL?

  3. Đăng nhập bằng LDAP bằng JSF 2,1 &Apache Tomcat

  4. Thay đổi số bắt đầu tăng tự động?

  5. Lỗi mã hóa Unicode Bộ giải mã 'latin-1' không thể mã hóa ký tự '\ u2019'