簡體   English   中英

100k帖子后,帶有wp_insert_posts的Wordpress中的批量帖子開始變得非常慢

[英]Bulk posts in Wordpress with wp_insert_posts begins to be very slow after 100k Posts

我正在使用wp_insert_post()函數在我的網站上批量發布新帖子。 我大約一個星期前開始工作,一切工作非常迅速,平均每分鍾大約有80個新帖子。 隨着發布帖子數量的增加,該功能每分鍾發布的平均帖子數逐日減少。

現在我有超過10萬個已發布的帖子,平均每分鍾5個新發布的帖子。

我使用的功能非常簡單:

   // Gather post data.
   $new_video = array(
       'post_type'     => 'video',
       'post_title'    => $title,
       'post_status'   => $status,
       'post_author'   => $author,
       'post_date'     => date("Y-m-d H:i:s"),  
       'post_date_gmt' => date("Y-m-d H:i:s"),
       'post_category' => explode(',', $category),
       'post_name'     => $rand_video_id
   );

   // Insert the video into the database.
   wp_insert_post( $new_video );

在帖子插入之后,我還設置了一些術語和一些帖子元。 通過在網絡上閱讀,我找到了提高wp_insert_post函數速度的不同解決方案,並且首先,這是一個解決方案:

wp_defer_term_counting(false);

當然,這是一個很好的解決方案,它不會浪費時間來計算術語,但是不幸的是,我沒有看到任何改善。

我也嘗試清除該功能,並刪除所有帖子標簽,自定義分類法和元數據的插入,但是它沒有速度效果。

有人有什么建議嗎? 謝謝

****已解決的問題****

通過停用用於生成.xml站點地圖的WP插件已解決了該問題-現在,一切恢復得非常快,每分鍾新帖子的平均數量又回到了80。

您需要像這樣向他們添加真實內容,此外,您還可以關閉評論計數功能,這也有助於加快處理速度。

wp_defer_term_counting( true );
wp_defer_comment_counting( true )

然后,在完成輸入后,將它們設置回false。

wp_defer_term_counting( false );
wp_defer_comment_counting( false );

這些還必須在具有wp_insert_post()函數的代碼之上,否則它將無法正常工作。

將這些設置為true時,盡管有很多后台進程和數據庫工作自然會減慢更新速度,但如果有10萬個帖子,它應該會有所幫助。 接下來的事情是查看數據庫中WP表的索引。 由於要按大小優化它們,因此很重要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM