2015-06-02 20 views
10

Tôi đã phát triển và đang chạy trang web xã hội như 'Facebook'.Làm cách nào để tăng tốc độ thực hiện và giảm thời gian thực hiện của một trang web xã hội như 'Facebook' được phát triển trong PHPFox?

Trang web này đã được phát triển bằng cách sử dụng PHPFox v3.0.7 (là nền tảng mạng xã hội được tạo bằng php).

Các chức năng của trang web hoạt động tốt, không có vấn đề gì với chúng.

Vấn đề chính, nghiêm trọng và nghiêm trọng mà tôi đang gặp phải với trang web là tốc độ thực thi chậm. Đối với bất kỳ loại hoạt động phải mất quá nhiều thời gian và người dùng phải chờ đợi cho rằng nhiều thời gian. Điều này thực sự kích thích người dùng và ảnh hưởng đến hiệu suất của một trang web.

Vì vậy, tôi đã nghiên cứu về 'Facebook'- Trang web mạng xã hội lớn nhất thế giới được phát triển bằng PHP. Nếu 'Facebook' có thể hoạt động ở tốc độ nhanh mặc dù tải người dùng nặng và hoạt động liên tục tại sao trang web của tôi không thể? Đầu tiên là trang web được phát triển bằng cách sử dụng một khung được gọi là 'PHPFox' để toàn bộ thiết kế cơ sở dữ liệu, bộ nhớ đệm và tất cả những thứ khác đã được quản lý bởi chính khuôn khổ đó, tôi không thể thay đổi cài đặt của khung. muốn tăng tốc độ thực thi của trang web của tôi.

Vậy làm cách nào để đạt được điều đó? Nếu bạn có bất kỳ giải pháp tốt nhất trong lớp, xin vui lòng cung cấp cho tôi hướng dẫn cho nó.

Mọi loại trợ giúp sẽ được đánh giá cao.

Vui lòng hỏi tôi bất kỳ truy vấn nào bạn có về vấn đề tôi đang gặp phải.

Cảm ơn.

+1

** Nếu 'Facebook' có thể thực thi ở tốc độ nhanh mặc dù tải người dùng nặng và hoạt động liên tục tại sao trang web của tôi không thể? - Tôi nghi ngờ họ đã dành nhiều hơn một _little_ phần cứng so với bạn đã truy cập. Ngoài ra, công cụ cơ sở dữ liệu bạn đang sử dụng có thể tạo ra sự khác biệt đáng kể. Cho rằng trình điều khiển DB mặc định của họ chỉ là một trình điều khiển MySQL (không được dùng nữa, nó ít nhất nên sử dụng giao diện mysqli), tôi sẽ không giữ quá nhiều hy vọng về một cải tiến xuất sắc. Thông tin DB ở đây: http://store.phpfox.com/kb/article/622/using-the-database-query-method – enhzflep

+0

Tôi phải hỏi quyền của cổng tài nguyên máy chủ là gì? – Brian

+0

Hãy xem trong trang web này: http://hhvm.com/ – rafaelphp

Trả lời

5

Có một số cách bạn có thể tăng tốc độ.

  1. Sử dụng CDN,
  2. Enable bộ nhớ đệm,
  3. Sử dụng tải máy chủ cân bằng,
  4. Enable nén,
  5. Kích hoạt bootstrap,
  6. Optimize cơ sở dữ liệu và db lái xe

Bạn có thể sử dụng phương pháp tăng tốc máy chủ sau

  1. Kích hoạt mod_deflacte
  2. Kích hoạt memchached
+1

Yu có thể sử dụng những thứ như speedtrap, munin, jmeter để theo dõi các phần chậm nhất trong mã của bạn. Tôi cũng sẽ thêm một vài lớp memcached của mình và ở đó, có thể là một cơ sở dữ liệu noSQL như CouchBase cho những thứ liên quan đến tài liệu, và nếu tất cả điều đó là không đủ, thì tôi có lẽ sẽ thay đổi hoàn toàn khung. HipHop hoặc Phalcon có thể là một điều cần xem xét. – PEM

3

tôi đã phải đối mặt với cùng một vấn đề trước khi làm việc trên phpFox và hầu hết những điều có thể được xử lý từ bảng điều khiển quản trị.

Bằng cách sử dụng ghi nhớ, tôi đã giải quyết được vấn đề tốc độ. Bạn có thể làm theo các bước đơn giản được đề cập trong cơ sở kiến ​​thức của PHPFox và tôi hy vọng bạn sẽ tìm thấy một số giải pháp.how-to-enable-memcached

3

Trước hết facebook sử dụng HHMV (HipHop Virtual Machine) mà là một động cơ thực hiện cho PHP, tức mã PHP của họ là lần đầu tiên chuyển đổi thành trung HipHop bytecode (HHBC), sau đó được tự động dịch sang các x86-64 mã máy, được tối ưu hóa và được thực thi nguyên bản.

Vì vậy, mỗi khi bạn đăng nhập vào facebook, bạn chỉ cần chạy mã máy hiệu quả cao .

tôi giả trang web của bạn không có HHMV, vì vậy đây là một số vài công cụ & lời khuyên để tăng cường PHP trang web chạy,

  1. memcached
  2. cassandra
  3. Tối ưu hóa điều khiển db
  4. Sử dụng msqli thay vì mysql
  5. Sử dụng máy chủ có cấu hình tốt hơn.
  6. Sử dụng phiên bản rút gọn của jquery & bootstrap (ví dụ: bootstrap.min.js & jquery.min.js).
1

Xin chào Trong câu hỏi chính của bạn, những gì bạn đang yêu cầu là lời khuyên để tăng hiệu suất của ứng dụng PHPFox của bạn. Trong khi đó, trong phần ghi chú khác, bạn đang tìm kiếm giải pháp để gửi Thông báo đẩy.

Tôi sẽ trả lời bạn về 'Tăng hiệu suất trang web của bạn'.

Như bạn phải biết, hiệu chỉnh/tối ưu hóa hiệu suất là nhiệm vụ lớn hơn. Nó có nhiều giai đoạn khác nhau được liệt kê bởi '@Myself Malay'. Một số người trong số họ có thể được thực hiện nhanh chóng và những người khác sẽ mất thời gian. Vì vậy, bạn cần phải biết họ, ưu tiên cho họ. Ví dụ: Giảm các yêu cầu của các tệp JS và CSS, bằng cách làm cho chúng tải bằng CDN, có thể được thực hiện nhanh chóng. Phục vụ tài nguyên của bạn (HTML, CSS, JS) dưới dạng nén (gzip) cũng có thể được thực hiện nhanh chóng.

Tối ưu hóa truy vấn của bạn sẽ tốn thời gian. Bật bộ nhớ cache sẽ nhanh chóng. Nếu bạn muốn thiết lập các cân bằng tải thì nó sẽ mất một thời gian.

Ở đây, tôi đang thêm một số liên kết tham chiếu về PHPFox, điều này sẽ giúp bạn.

  1. http://www.ipragmatech.com/phpfox3-performance-xcache-apc-memcached.html#.VXkzXt93M_M
  2. How to optimize your database tables in PHPFox
  3. Speedup PHPFox V3
  4. PHPFox - Optimization Settings

Lưu ý: Một số tinh chỉnh có thể yêu cầu sửa đổi các tập tin cốt lõi. Hãy cẩn thận, trong khi làm như vậy là họ sẽ làm cho tự động cập nhật rất khó khăn. Luôn luôn lấy mã của bạn và sao lưu DB trong khi sửa đổi các tập tin cốt lõi của bạn. Tạo một tài liệu về những thay đổi bạn đã thực hiện khi tệp nào, tại sao vv, điều này sẽ giúp bạn áp dụng lại tất cả những thay đổi đó một lần nữa, trong trường hợp cập nhật mã của bạn lên phiên bản mới.

Dưới đây, tôi đang bổ sung thêm một số liên kết, mà sẽ giúp bạn trong việc tìm hiểu Tối ưu hóa hiệu suất sang cấp độ tiếp theo

  1. Books for Building Scalable Web Applications? (DB Performance/Tuning, Networking, General Performance, etc.)
  2. Scalability and Performance of Web Applications, Approaches?

cuốn sách yêu thích cá nhân của tôi là: Scaling PHP Applications by Steve Corona. Cuốn sách này là tài liệu tham khảo tốt nhất có sẵn cho các nhà phát triển PHP.

Mặc dù tôi không thể đưa ra bất kỳ giải pháp trực tiếp nào cho vấn đề của bạn, hy vọng điều này sẽ giúp tối đa mức độ nhất định. Tất cả tốt nhất :-)

1

Trước hết, hãy ngừng so sánh trang web Phpfox của bạn với Facebook. Facebook có hàng trăm ngàn lập trình viên làm việc ngày đêm để duy trì hiệu suất hoạt động. Đó là một sự thật đáng kinh ngạc rằng PHP là một ngôn ngữ kịch bản phía máy chủ chậm. Nếu trang web của bạn cải thiện, hiệu suất sẽ giảm. May mắn thay, có một số công cụ có sẵn có thể được sử dụng để tăng hiệu suất tổng thể của trang web của bạn. Một số trong số đó là Memcached, Cassendra, Varnix vv Bạn có thể sử dụng mạng CD để phục vụ dữ liệu nhanh hơn. Chọn một máy chủ lưu trữ tốt cũng giúp làm cho trang web của bạn sẵn sàng cho lưu lượng truy cập lớn. Facebook sử dụng hơn 100 công nghệ độc đáo để duy trì trang web với tốc độ đáng kính. Hiphop PHP là một công nghệ được phát triển bởi chính công ty và được sử dụng để biên dịch các tập lệnh PHP nhanh hơn bất kỳ trình biên dịch C++ gốc nào. Hiphop làm cho PHP Code thực thi nhanh hơn 30-50%. Vâng, HHVM là một thay thế cho Hiphop PHP và có sẵn miễn phí nhưng đòi hỏi nginx. Hãy suy nghĩ lại, chuyển từ Apache sang nginx không phải là một quyết định tốt nếu bạn chỉ là người mới bắt đầu.

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