Cách giảm tải admin-ajax.php trên WordPress thời gian load nhanh - AGOLA Cách giảm tải admin-ajax.php trên WordPress thời gian load nhanh - AGOLA
17 / 100

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

Khi nói đến hiệu năng website, thường chúng ta luôn chú ý đến page load time (thời gian tải trang). Trong WordPress, một tình huống gây ra 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 như hướng dẫn giảm số lượng 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 bên cạnh 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 yêu cầu 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 lưu 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 muốn viết/chỉnh sửa bài viết trong khi 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 để tiếp 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 tất trong 3 giây hoặc ít hơn. Nếu mất lâu 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ọ rời khỏi hoặc không quay lại nữa.  Thời gian tải trang chậm cũng ảnh hưởng xấu đến xếp 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ó 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 dùng khi sử 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 hiểu thêm thông tin bên dưới

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

Plugin bên thứ 3 là nguyên 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à giải 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ó khi 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, đây là nguồn bạn có thể tham khảo để xử lý AJAX trong plugins.

Còn với chủ website, bạn sẽ cần chẩn đoán plugin trước khi vô hiệu nó. Đây là cách để xác định đượ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ó 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 ra lỗi. Nhưng giải pháp này khá tốn thời gian và có vẻ như không quả nhất.

Bên dưới là các phương pháp đúng hơn để tìm rõ nguyên nhân gốc rễ gây lỗi. Tình huống là bạn nhận thấy 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í mạnh mẽ để lấy thông tin dữ liệu phản hồi của website.

Cách 1

Vào trang GTmetrix, điền địa chỉ website đầy đủ và click vào nút Analyze. Sau vài 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 tình trạng website như là điểm hiệu năng và thông tin trang. Vào tab Waterfall để đánh giá các yếu 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 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: HeadersParametersPost, và Response. Khi chẩn đoán vấn đề, tab Post và 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 biết được 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 thực 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ả khi 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 còn 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 cần dùng plugin này, hãy đảm bảo bạn dùng bản mới nhất. Nếu đã làm tất cả 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 khô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ương tự để 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ó 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 – để tránh mất đi thông tin 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à cung cấp 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 ra tải cao cho CPU, mặc dù Hostinger sẽ không phải là vấn đề.

Để giải quyết 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ì lựa chọn đầu tiên 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 gọi là Heartbeat Control.

Chuyển tới Dashboard -> Plugins -> Add New. Tìm plugin theo tên nhấn nút install và 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 số lượng frequency cao hơn 15. Trong trường hợp này, chúng tôi đặt nó 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 ra 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ó thể gây ra 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ó tình trạng 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ần phải disable mọi plugin, vì nhiều khi nó có thể gây hỏng website. Chỉ cần chú ý để chọn đúng plugin và thay thế nó hoạt tùy chỉnh nó để không gây 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 thế nào xử lý vấn đề này!

Các lý do cần đọc trước khi quyết định liên hệ tôi 

  1. Tham gia group Mua bán Google Ads và Google Shopping :

    https://www.facebook.com/groups/314513929300715

  2. Tham gia group mua bán cho thuê tài khoản BM Agency :

    https://www.facebook.com/groups/1204318359703229

  3. AGOLA chỉ cung cấp dịch vụ không có dịch vụ tư vấn hiểu tới đâu bán tới đó !
  4. AGOLA ngừng cung cấp các gói dịch cho bọn có Slogan " Tuần đổi xe tháng mua nhà " hoặc liên quan !
  5. Các dịch vụ liên quan đến hướng dẫn : diễn ra từ 5-30 phút thông qua teamview hoặc ultral thời gian càng ngắn giá tiền càng cao nên các bạn đọc kỹ trước khi sử dụng
  6. Các sản phẩm dịch vụ không có thương thảo giá và cũng không có hỏi thêm
  7. Không làm việc với mấy thằng giao lưu với lũ suốt ngày dùng VPS remote này remote kia sock này sock kia đổi ngôn ngữ này đổi ngôn ngữ kia add page này sang page kia đổi đá cá kiểu con đà điều ... đây là một lũ ngu thời hiện đại khi bạn muốn vượt rào vòng đầu bạn đã gian lận thì vượt vào đít kèm với đó khả năng dính liên đơi nghi ngờ hành vi bất thường là rất cao nó như kiểu hành vi của bạn có tần xuất giống như hành vi của bọn gian lận khá nhiều nó cho bạn vào động cơ gian lận có nguy cơ nó sẽ pem luôn nhé ... và ti tỷ lý do khác nhé nếu bọn mày mà làm theo tụi nó lên cam được tao cho 20 triệu tiền cafe cà pháo
  8. Không bán vĩnh viễn mọi dịch vụ mua nhầm đòi đổi sang gói dịch vụ khác
  9. Thông tin bảo hành gần như không có nhưng cũng có một số dịch vụ có bảo hành đề nghị đọc kỹ trước khi quyết định mua
  10. Quyết định mua hàng là đồng ý các điều khoản mua bán và điều khoản không được lấy lại tiền và không bồi hoàn
  11. Mua hàng thì xin đọc kỹ điều khoản ở từng mô tả trước khi quyết định nhấc máy liên hệ ở thông tin của từng gói dịch vụ
  12. Mọi giao dịch đều được phải bắt buộc chụp màn hình chuyển khoản gửi vào Zalo
  13. Các đối tượng cố ý chuyển tiền gói này để trục lợi sử dụng gói khác đều được coi là hình vi lừa đảo ! Cố ý ghi nội dung hiểu lầm về chuyển tiền để đôi co đòi sử dụng gói dịch vụ khác cũng vậy !
  14. Tôi là dân khối A nên việc viết sai lỗi chính tả thì kệ mẹ tôi thích thì mua không thích thì đừng soi đi ra chỗ khác do tôi không có soát lại chính tả nên các bạn đọc thay vì thắc mắc thì thông cảm giùm tôi ! miễn sao tôi truyền tải thông tin bạn đọc bạn thấy hiểu được bạn sử dụng không được bạn tìm bên khác
  15. Tôi không làm việc với bọn cử nhân viên là các công ty Agency , truyền thông gọi hỏi dò hỏi luyên thuyên ! Nếu cố tình tôi sẽ dùng CRM Agency cấm lock chạy Ads vĩnh viễn khi nhìn thấy đuôi theo rõi của doanh nghiệp đó mà tôi đã gán.
  16. Tôi không làm việc với bọn nào thì tôi chạy tiền tỷ tôi tiêu tiền tỷ nhưng chạy demo trước nếu ngon thì vít lớn nhưng sau 3 ngày thuê thấy đéo thấy như cam kết về ngân sách
  17. Tôi không hợp tác ăn chia hay kiểu Win Win đôi bên có lợi
  18. Tất cả những câu hỏi khi gọi điện khiến tôi nghĩ rằng bạn chưa đọc kỹ thông tin trên website sẽ được tôi từ chối vô điều kiện
  19. Không làm việc các công ty có các nhân vật nổi tiếng trên các đài báo truyền hình bởi vậy bớt quảng cáo
  20. Các đối tượng cố tình lên mạng tìm kiểm thông tin tôi và không có trao đổi được tôi dùng Zalo : O9O9.456.866 gửi STK thông tin thanh toán của tôi qua zalo đó mà vẫn chuyển tiền vào tài khoản của tôi được coi là hình vi lừa đảo cố tình trọc phá và lợi dụng sử dụng lừa đảo để mong muốn sử dụng dịch vụ của tôi nhưng vì cấm nên phải làm vậy
  21. Kiến thức của đại đa số dân trên mạng không sai mà chỉ đúng với bọn gà mờ mà thôi kiểu như bạn học lớp 1 cô giáo nói 1 không trừ được cho 2 lên cấp 2 cô giáo nói 1 trừ được cho 2 ! Lúc đó cô giáo cấp 1 hay thầy giáo cấp 2 không nói ai đúng ai sai được mà tại thời điểm đó bạn thấy nó đúng còn khi đi sâu vào nó đéo đúng 😀 ! Cũng như việc tôi bán dịch vụ cho dân trong nghề việc tôi có bắt mấy thằng cấp 1 nuốt kiến thức chuyên sâu của cấp 2 là không được bởi vậy dân nào hiểu sẽ liên hệ mua chứ đừng kiểu lơ mở hỏi cho vui cửa vui nhà
  22. Không làm việc với bọn hở miệng ra là em từng có BM2500 với BM1000
  23. Không lamg việc với bọn hở mồm ra là fake mà đến cái via kiểm tra như thế nào là 1 cái via Việt hay via us... cũng đéo biết kiểm tra thế mà cứ đi nghe mấy thằng trên mạng Fake Ip , Fake đổi ngôn ngữ này ngôn ngữ kia ... tùm lum tà la login đổi via các kiểu con đa điểu rồi nghe thì vui tai mà làm cũng được không đéo có biết lý do chỉ có lý do vớ vẩn - Không tin tao đố bọn mày hỏi thử nó 1 câu via Việt là như thế nào đố thằng đó biết đó xàm xí - hay via việt là thông tin Việt Nam hahaha !
  24. Không làm việc với bọn nào thì đổi mạng 4g kết nối này kết nối kia lên cam có con cặc ấy mấy cái công nghệ cổ lỗ sĩ này bọn code tool click quảng cáo nó sài gần 10 năm nay rồi lòe dân gà hoài dần dần ko hiệu quả bọn nó ko dùng rồi lũ đó biến mất khỏi thị trường bán tài khoản
  25. Quyết tâm cấm log mọi thằng liên quan tới BM2500 vĩnh viễn hạn chế tài khoản quảng cáo liên đới từ 6 tới 2 năm kể cả cho kháng XMDT theo tút trên mạng
  26. Tiếp tục sắp tới sẽ thanh lọc toàn bộ Invoice
  27. Bọn mày nghĩ xem mẹ chúng nó giỏi vậy nhận hàng về mà chạy quảng cáo đi giàu hơn ko sao phải đi kiếm tiền dạy học ba láp ba xàm đó xem thấy quảng cáo của tụi đó trước đây chạy quảng cáo tràn lan quảng bá khóa học như đúng rồi giờ chạy đi ba láp ba xàm

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Call Now Button
X