抵擋爬蟲
跳至導覽
跳至搜尋
Cloudflare頁中有「抵擋爬蟲」的段落
DS720+ 檢測
檢查儲存裝置被頻繁寫入
發現儲存裝置有 11MB/s 寫入量
- 查資料庫請求的增量:「SHOW GLOBAL STATUS LIKE 'Questions';」 60 秒後 再執行一次,看增加多少 => 60 秒增加:76491 => 約 1,275 queries / 秒
- 查是哪些請求:「SHOW FULL PROCESSLIST;」秀出運行中的全部請求
如果太多,先用這個:
---------- information_schema 資料庫中的 PROCESSLIST 資料表 ----------- SELECT ID,USER,DB,COMMAND,TIME,STATE,LEFT(INFO,300) AS SQL_TEXT FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND<>'Sleep' ORDER BY TIME DESC;
也查資料庫連線來源: - SELECT USER,DB,COMMAND,COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST GROUP BY USER,DB,COMMAND ORDER BY COUNT(*) DESC;
- 查到:
REPLACE /* SqlBagOStuff::updateTable */ INTO `wiki_objectcache` (keyname,value,exptime) VALUES ('alWiki:messages:zh-tw','………','20380119031407')
- 11MB/s 寫入的原因很明確:objectcache 一直被 REPLACE
---------- 查快取是否使用 wiki_objectcache ----------
- SELECT ID,USER,DB,COMMAND,TIME,STATE,LEFT(INFO,300) AS SQL_TEXT FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND<>'Sleep' ORDER BY TIME DESC;
- SELECT COUNT(*) FROM wiki_objectcache; 等一分鐘再查一次,如果數量持續增加,是使用 wiki_objectcache
- 看 SHOW TABLE STATUS LIKE 'wiki_objectcache'; 中的:
- Data_length
- Index_length
- Update_time
- 清快取表:「TRUNCATE TABLE wiki_objectcache;」
- sudo synopkg restart MariaDB10 重啟資料庫服務
- sudo synopkg restart WebStation 重啟網頁服務
- sudo synosystemctl restart pkgctl-WebStation 只重啟 PHP-FPM