Cam kết Chọn ngay Chuyên Nghiệp trong phục vụ với hơn 20 Kỹ thuật IT luôn sẵn sàng tới tận nơi sửa chữa và cài đặt ở Tphcm. Báo giá rõ ràng. 100% hài lòng mới thu tiền.


Sửa máy tính cài win PCI

Cam kết Chọn ngay Chuyên Nghiệp trong phục vụ với hơn 20 Kỹ thuật IT luôn sẵn sàng tới tận nơi sửa chữa và cài đặt ở Tphcm. Báo giá rõ ràng. 100% hài lòng mới thu tiền.


Công ty sửa máy tính PCI

Cách giảm thời gian tải admin-ajax.php trên WordPress

Website suamaytinhpci.com có bài Cách giảm thời gian tải admin-ajax.php trên WordPressWebsite bị chậm có thể là do file admin-ajax.php hoặc heartbeat API đang có vấn đề khi xung đột plugin. Cùng sửa lỗi website WordPress nào!

Tốc độ website là điều đươc quan tâm hàng đầu của mỗi chủ website. Vấn đề hiệu xuất ảnh hưởng lớn số 1 đến trải nghiệm người sử dụng và thứ hạng SEO. Vì Google xem thời gian tải trang là một nhân tố xếp hạng.

Khi nói về hiệu xuất website, thường chúng ta luôn chú trọng đến page load time (thời gian tải trang). Trong WordPress, một trường hợp gây nên sự cố tăng thời gian tải trang có thể là do file admin-ajax.php . Trong bài viết này, chúng tôi sẽ chỉ bạn cách xử lý các plugin bị xung đột gây ra bởi file admin-ajax.php,  cũng giống hướng dẫn giảm con số request files và request callback. Nhờ đó website WordPress sẽ được tối ưu hơn và website được tăng tốc.

File admin-ajax.php là gì trong WordPress?

Vào 2013, WordPress version 3.6 được phát hành cạnh bên Heartbeat API trong bộ mã nguồn. WordPress Heartbeat API là giao thức liên lạc giữa trình duyệt và server. Giao thức này sử dụng admin-ajax.php để gửi đòi hỏi tới server và kích hoạt event (callbacks) khi nhận dữ liệu. Tính năng chính của Heartbeat API là:

  • Tự động sao lưu

Khi bạn viết nội dung lên cho WordPress, lưu lại bản nháp và tiếp tục cập nhật bản nháp này, WordPress sẽ tự động đọng lại những thay đổi thêm của file.

  • Khóa bài viết và thông báo đăng nhập

Trong website WordPress, bạn sẽ thấy popup hiện lên mỗi khi bạn mong muốn viết/chỉnh sửa bài viết trong lúc người khác đang thao tác trên đó. Bạn cũng nhận được thông báo khi phiên làm việc kết thúc, và bạn cần đăng nhập lại để đón tục viết bài.

Vấn đề admin-ajax.php gây ra

Vấn đề admin-ajax.php có thể khiến web page load chậm. Quy tắc vàng của thế giới Internet là site của bạn nên được tải hoàn chỉnh trong 3 giây hoặc ít hơn. Nếu mất lâu bền hơn thời gian đó, bạn sẽ mất khách truy cập hoặc để lại trải nghiệm xấu và khiến họ ra khỏi hoặc không quay về nữa.  Thời gian tải trang chậm cũng ảnh hưởng thiếu tích cực đến xếp thứ hạng SEO. Bạn nên biết Google sử dụng tốc độ làm thước đo trong thuận toán xếp hạng site. Bên cạnh đó, tải trang chậm cũng có thể có thể khiến search engine quét ít trang hơn vì chạm ngân sách lượt quét, nó ảnh hưởng tới việc index trang về sau.

Đối với chúng ta, API chỉ cần sử dụng khi dùng công cụ kiểm tra tốc độ, như công cụ GTmetrix, để tìm hiểu vì sao admin-ajax.php lại làm chậm website..

spikes trong admin-ajax.php

Nguyên do của việc load admin-ajax.php chậm có thể xuất phát từ 2 việc, một là do plugin bên thứ 3, hai là do request WordPress Hearbeat trên khu vực admin. Hãy cùng chúng tôi tìm biết thêm tin tức bên dưới

Plugins khiến tăng thời gian tải file admin-ajax.php

Plugin bên thứ 3 là lý do phổ biến nhất gây lỗi chạy file admin-ajax.php . Nếu làm đúng, AJAX đính thức là biện pháp tốt. Ví dụ, lập trình viên sử dụng AJAX request và tạo wp_query riêng để hiển thị nội dung động trên một trang web được cache.

Nhưng có lúc nhiều plugin sử dụng đồng thời các queries này, nó gân tràn bộ nhớ. Vì vậy, nó làm hỏng và làm chậm toàn bộ website. Nếu bạn là lập trình viên, này là nguồn bạn cũng có thể có thể tham khảo để giải quyết AJAX trong plugins.

Còn với chủ website, bạn sẽ cực kỳ cần chẩn đoán plugin trước khi vô hiệu nó. Đây là cách để định vị được plugin cụ thể nào gây ra lỗi tải trang của admin-ajax.php.

Chẩn đoán Plugins

Xung đột plugin cũng đều có thể gây lỗi tải trang. Cách cũ là bạn sẽ cần vô hiệu toàn bộ plugin để sửa lỗi, và kích hoạt từng cái một để xem cái nào không gây nên lỗi. Nhưng biện pháp này khá tốn thời gian và dường như không quả nhất.

Bên dưới là các cách thức đúng hơn để tìm rõ nguyên nhân cỗi rễ gây lỗi. Tình huống là bạn nhận biết thời gian tải trang đang bị chậm. Sau đó bạn chẩn đoán site bằng GTmetrix. Nó là công cụ miễn phí hùng cường để lấy tin tức dữ liệu phản hồi của website.

Cách 1

Vào trang GTmetrix, điền địa chỉ website đầy đặn và click vào nút Analyze . Sau khoảng 1 đến 2 phút việc phân tích sẽ hoàn tất.

trang chủ gtmetrix

Sau khi hoàn tất, bạn sẽ thấy bản báo cáo trạng thái website như là điểm hiệu năng và tin tức trang. Vào tab Waterfall để đánh giá các nhân tố chi tiết hơn.

cửa sổ báo cáo kết quả gtmetrix

Cửa sổ Waterfall sẽ hiển thị tất cả các yếu tố trên đó. Mặc dù các files có vẻ không có vấn đề gì, nhưng bạn sẽ thấy POST admin-ajax.php có thời gian tải lâu bền hơn các file khác.

báo cáo chi tiết gtmetrix

Nhấn vào POST admin-ajax.php , bạn sẽ thấy có 4 tab khác nhau: Headers , Parameters , Post , và Response . Khi chẩn đoán vấn đề, tab Post Response là nơi bạn cần quan sát kỹ

Đối với site này, chúng ta thấy trong Post tab, có vấn đề gì đó với script “ count_hit ”.

Thông tin chi tiết count hit script

Thông tin này cho ta hiểu rằng là một bài post nhất định đã chạm plugin counter mà chúng tôi cài đặt trước. Vậy, để chứng nhận giả thuết trên, chúng tôi thử vô hiệu plugin và chạy lại bài kiểm tra thứ 2 với GTmetrix để xem kết quả lúc không có plugin đó.

plugin xung đột sau khi vô hiệu

Chúng ta đã nghi ngờ đúng. Bằng việc vô hiệu hóa plugin đó, chúng ta đả giảm thời gian tải trang xuống chỉ từ 2 giây.

Cách 2

Bạn cũng có thể sử dụng Chrome developer console để tìm ra plugin khả nghi.

Mở website. Chuột phải vào trang web -> Inspect . Ngoài ra, bạn trên tab Chrome, vào View -> Developer -> Developer Tools .

Nhấn qua Network và tải lại trang.

chrome console báo cáo admin-ajax.php

Trong ô filter (ngay bên dưới chấm đỏ) điền admin-ajax.php . Bạn sẽ thấy thủ phạm của vấn đề tại đây. Sau đó, bạn thử vô hiệu plugin và chạy lại kiểm tra để xem thử vấn đề còn không.

Là chủ website, nếu thật sự bạn phải dùng plugin này, hãy đáp ứng bạn dùng bản mới nhất. Nếu đã làm mọi thứ mà lỗi vẫn còn, hãy thử liên hệ với lập trình viên của plugin để xử lý vấn đề nay.

Nếu lậpt rình chẳng thể xử lỗi, bạn có thể thay thế plugin bằng plugin khác. Ưu điểm của WordPress là có nhiều plugin tựa như để bạn tha hồ chọn lựa. Chỉ cần vào thư viện Plugin WordPress để chọn plugin được dùng nhiều mà có tính năng tương tự.

Tăng tốc backend của website WordPress

Đôi khi, WordPress Heartbeat API kích hoạt trên backend của site cũng cũng có thể có thể là nguyên nhân gây lỗi. Như đã lưu ý ở trên, tính năng này giúp bạn tự động lưu lại công việc – để né mất đi tin tức vừa nhập khi có lỗi xảy ra.

Ví dụ, tính năng này sẽ có kích hoạt mỗi lần bạn viết bài mớ và vẫn để tab mở. Nó có thể tăng mức độ sử dụng CPU, như bạn thấy thông tin callback trong developer console bên dưới.

admin-ajax.php trigger trên backend

Lượng sử dụng CPU là vấn đề đối với những ai dùng gói shared hosting. Một số nhà sản xuất hosting không chấp nhận việc tăng tải cao cho CPU, và thường đình chỉ các tài khoản gây nên tải cao cho CPU, mặc dù Hostinger sẽ không cần là vấn đề.

Để xử lý vấn đề này, bạn cần làm 2 việc, vô hiệu heartbeat API hoặc tạo trigger kiểm tra dài hơn. Vì chọn lựa trước mắt không phải tốt nhất, nên chúng tôi sẽ hướng dẫn bạn cách thứ 2. Để thay đổi khoảng nghỉ (interval), bạn sẽ cần cài plugin xem là Heartbeat Control.

Chuyển tới Dashboard -> Plugins -> Add New . Tìm plugin theo tên nhấn nút install activate nó.

Sau khi kích hoạt, chuyển tới Settings -> Heartbeat Control Settings . Tại đây, bạn có thể đặt các quy tắc khác nhau cho nhiều điểm khác nhau.

cấu hình kiểm soát heartbeat

Vì chúng ta muốn giảm thiểu khoảng thời gian giữa từng lần callbacks trong post editor, bạn có thể thiết lập con số frequency cao hơn 15. Trong trường hợp này, chúng tôi đặt chúng là 200.

Sau khi hoàn tất, nhấn Save Changes .

Lời kết

Bạn đã biết về Heartbeat API và file liên quan của nó, admin-ajax.php . Bạn cũng đã biết vấn đề phát sinh sẽ gây nên kết quả như thế nào đối với file này, khi có xung đột plugin. Bạn cũng biết là bản thân Heartbeat API cũng đều có thể gây nên tải cao cho server nếu không được quản lý tốt.

Lưu ý là, luôn kiểm tra trước với GTmetrix khi bạn cảm thấy có trạng thái chậm trên website. Mở tab waterfall, chuyển tới mục POST admin-ajax.php để thấy nó đang làm gì. Không càng phải disable mọi plugin, vì nhiều khi nó cũng có thể gây hỏng website. Chỉ cần chú trọng để chọn đúng plugin và thay thế nó hoạt tùy chỉnh nó để không khiến lỗi nữa là được. Bạn cũng có thể giới hạn mức độ sử dụng heartbeat API.

Bạn có đang gặp vấn đề với admin-ajax.php ? Để lại bình luận và chúng tôi có thể sửa cho bạn đấy, hoặc chia sẽ cách bạn làm ra sao xử lý vấn đề này!

Từ khóa bài viết:

Bài viết Cách giảm thời gian tải admin-ajax.php trên WordPress được tổng hợp sưu tầm và biên tập bởi nhiều user – Sửa máy tính PCI – TopVn Mọi ý kiến đóng góp và phản hồi vui lòng gửi Liên Hệ cho chúng tôi để điều chỉnh. Xin cảm ơn.

Bài Viết Liên Quan


Xếp Hạng

Bài Viết Khác

--