[wp-trac] [WordPress Trac] #10952: Wordpress checks for core/plugin/theme upgrades upon every hit to [almost] any admin page

WordPress Trac wp-trac at lists.automattic.com
Wed Oct 14 07:34:33 UTC 2009


#10952: Wordpress checks for core/plugin/theme upgrades upon every hit to [almost]
any admin page
--------------------------+-------------------------------------------------
 Reporter:  archon810     |       Owner:            
     Type:  defect (bug)  |      Status:  new       
 Priority:  normal        |   Milestone:  Unassigned
Component:  Performance   |     Version:  2.8.4     
 Severity:  normal        |    Keywords:            
--------------------------+-------------------------------------------------
 This seems insane to me. Diagnosing performance issues, I'm digging
 through the code with a profiler and seeing calls to http.php,
 specifically WP_Http_Curl::request() function taking the longest time.

 After adding a few prints into that function, I found that the Wordpress
 API is getting called upon every single page load, for example the
 Comments page, Posts, Settings, etc.

 Here are the calls, with duration added at the end.
 {{{
 http://api.wordpress.org/core/version-
 check/1.3/?version=2.8.4&php=5.2.9&locale=en_US&mysql=5.0.67&local_package=
 0.13813519477844s
 http://api.wordpress.org/plugins/update-check/1.0/ 0.58831095695496s
 http://api.wordpress.org/themes/update-check/1.0/ 0.34422087669373s

 http://api.wordpress.org/core/version-
 check/1.3/?version=2.8.4&php=5.2.9&locale=en_US&mysql=5.0.67&local_package=
 0.13466596603394s
 http://api.wordpress.org/plugins/update-check/1.0/ 0.5711510181427s
 http://api.wordpress.org/themes/update-check/1.0/ 0.35010981559753s

 http://api.wordpress.org/core/version-
 check/1.3/?version=2.8.4&php=5.2.9&locale=en_US&mysql=5.0.67&local_package=
 0.1392650604248s
 http://api.wordpress.org/plugins/update-check/1.0/ 0.57304692268372s
 http://api.wordpress.org/themes/update-check/1.0/ 0.41575598716736s
 }}}

 The crazy part here is that these 3 updates take over a second and are
 done EVERY SINGLE TIME, without any kind of rate limiting. I understand if
 they were done at most once an hour or only when the Plugins or Themes
 pages were hit, respectively but this is a huge overkill and performance
 monster.

 Additionally, I don't understand why Wordpress.com would want that many
 more hits to the API - I'm sure somebody on the WP.com team had to have
 noticed this before.

 The only relevant ticket I found is #8590.

 The fix should be rate-limiting, IMO. Thoughts please.

-- 
Ticket URL: <http://core.trac.wordpress.org/ticket/10952>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software


More information about the wp-trac mailing list