WordPress w3tc_cdn_queue problem

Wordpress w3tc_cdn_queue problemДобар ден,

Днес ще пиша за един проблем който мъчи блога ми от доста време. Става дума за страниците в блога където има много снимки – когато се отворят за първи път (преди varnish-a да е направил кеширан вариянт на страница) се отваря за около 2 минути!! Това е просто меко казано нелепо и трябваше да го оправя!

Днес открих че проблема е от една заявка която прави w3-total-cache плугина когато се използва CDN. Ако спазваме внимателно указанията за инсталация на този плугин трябва да напишем следната заявка:

DROP TABLE IF EXISTS `wp2_w3tc_cdn_queue`;
CREATE TABLE IF NOT EXISTS `wp2_w3tc_cdn_queue` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`local_path` varchar(500) NOT NULL DEFAULT '',
`remote_path` varchar(500) NOT NULL DEFAULT '',
`command` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '1 - Upload, 2 - Delete, 3 - Purge',
`last_error` varchar(150) NOT NULL DEFAULT '',
`date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`id`),
KEY `date` (`date`)
) ;
[/code]
Ами хубаво ама не правете това! Днес открих че MySQL-a ми товареше на 160% CPU като отворя сайта на Ани и след като отворих mysql.log видях следното:
                 2057 Query     SELECT remote_path FROM wp2_w3tc_cdn_queue WHERE remote_path = 'wp-includes/js/jquery/jquery.js'
2057 Query SELECT remote_path FROM wp2_w3tc_cdn_queue WHERE remote_path = 'wp-includes/js/jquery/jquery-migrate.min.js'
2057 Query SELECT remote_path FROM wp2_w3tc_cdn_queue WHERE remote_path = 'wp-includes/wlwmanifest.xml'
2057 Query SELECT remote_path FROM wp2_w3tc_cdn_queue WHERE remote_path = 'wp-includes/js/comment-reply.min.js'
2057 Query SELECT remote_path FROM wp2_w3tc_cdn_queue WHERE remote_path = 'wp-content/themes/postline/js/audio-player.js'

И ето защо страниците със снимките се отварят така мега бавно! Дропнах таблицата и си реших проблема завинаги!

MariaDB [jbblog]> DROP TABLE IF EXISTS `wp2_w3tc_cdn_queue`;
Query OK, 0 rows affected (0.04 sec)
[/code]