Google Bot, Crawl, Spider對虛擬主機造成太大的負擔?

  一般來說,我們都巴不得Google機器人(Google Bot, Crawl, Spider)來「臨幸」我們的網站,天天來、常常來最好,好好的將我們網站內的資料,收錄到Google的資料庫中,但有時Google機器人太常來造訪,反而會造成我們的困擾…

  前一陣子,忽然間我有個網站,流量大減,用「網站管理員工具」看了才發現到Google的機器人,居然無法讀取我的網站,在詢問了虛擬主機商之後,才發現虛擬主機商的程式,把Google Bot的IP位址,給Ban掉設為黑名單了,在請主機商把IP位址從黑名單給移除後,才又正常了。

  幾天過後,同樣的情況又再度發生,Google Bot,又進了黑名單了…,經詢問主機商說,Google Bot造成太大量的存取,影響到了主機的運作。

  我這個網站,是用Wordpress架起來的,已經運作了一年多,這幾個月以來,瀏覽人數愈來愈多,外掛程式安裝了不少,而且主程式也持續的更新,一直到現在,也變的愈來愈慢了。

  我後來在Wordpress,安裝了「Google Bot Bling」這個外掛程式,來觀察Google Bot抓取網站的頻率,如下圖:

change_google_bot_rate-01.jpg

  這個外掛程式,每隔一段時間(時間間隔可設定),就會將這段時間,Google Crawl所存取的時間給記錄起來,並且發一封電子郵件給你,從我的這封Log信可以看到,Google Crawl甚至一分鐘會存取個網站三次,如4:56、5:01、5:03。

  網路上有教學,說可以設定「robots.txt」,來規定機器人可存取的時間、頻率,例如「Visit-time:0100-1300、Request-rate: 5/1m、Crawl-delay:5」等語法,但實際在Google所提供的robots測試網頁上測試,Google根本就不認識這些語法,換句話說,這些語法並不適用於Google Bot,所以就沒有其它辦法了嗎?

  幸好,最後在「網站管理員工具」中,看到了設定的選項,經過設定之後,再來觀察Google Bot存取的頻率,如下圖:

change_google_bot_rate-02.jpg

  由上圖可以發現到,Google Bot存取的頻率,已經拉長到2~3分鐘存取一次了,所以我來分享一下,我找到的這個設定方式。

如何減少Google機器人抓取你網站的頻率?

  Step 1. 首先,來到「網站管理員工具」,若你還沒有註冊過「網站管理員工具」,就先註冊一下。接著,再點擊〔新增網站〕,來新增你想更改抓取頻率的網站,新增網站時,會需要做一些網站驗證的工作,這部份並不難,先試看看吧。

  要注意的是,「Google網站管理員工具」只能針對「網域」及「子網域」來更改頻率,例如:「changyang319.com」或「site.changyang319.com」,若你的網站是「changyang319.com/site/」的話,就只能直接更改「changyang319.com」的存取頻率。

change_google_bot_rate-03.jpg

  Step 2. 接著點進你所設定的網站設定檔,接著點擊右上角的「齒輪」圖示,並且點擊選單中的「網站設定」,如下圖:

change_google_bot_rate-04.jpg

  Step 3. 接著就可以在「檢索頻率」中看到「允許Google最佳化我的網站(建議內容)」,以及「限制Google的檢索頻率上限」,如下圖:

change_google_bot_rate-05.jpg

  Step 4. 接著點擊「限制Gooogle的檢索頻率上限」,就會看到這部份的設定,「低」的意思就是,降低檢索的頻率,所以我們就將滑桿,滑到「最低」的位置,「0.002每秒要求數、500兩次要求間秒數」,最後再點擊〔儲存〕,如下圖:

change_google_bot_rate-06.jpg

  Step 5. 在點擊〔儲存〕之後,會出現「已成功儲存您的變更,而該變更在xxxx年xx月xx日前都有效」,原來更改這個設定,是有期限的,每更改一次,可以保持90天,換句話說,如果你想要持續的話,就要在2個多月時,再來這邊更改一次設定。

change_google_bot_rate-07.jpg

  在更改了設定之後,網站設定檔會有通知訊息出現,在這個訊息中提到「您的要求將在1到2天後生效」,根據我這次的經驗,根本不需要到1~2天的時間,幾個小時過後,就可以看到效果了,真是太有效率了。

change_google_bot_rate-08.jpg

降低負載的方法-網站必須優化

  而在我修改檢索的頻率之後,雖然Google Bot應該不會再被主機商設為黑名單了,但實際上,這並沒有減輕多少主機的負擔,最終我還是被主機商告知,我的網站資源使用量太了。

  這時我才明白,主機的負擔,主要來自網站本身,也就是在每一次存取我的網站時,因為網站太龐大,才造成主機資源使用過量,聽的懂我要傳達的意思嗎?

  如果網站本身不要那麼複雜,就算Google Bot每分鐘存取3次,也不會造成網站資源使用過量;換句話說,如果網站太複雜的話,就算3分鐘存取網站一次,也會造成網站資源使用過量,因此,「優化網站」,才是我們應該要做的,誰叫我們購買「虛擬主機」,要和別人共用主機呢…

  如我前面所述,我使用的是Wordpress架設的網站,經過再修正一些網站本身的設定之後,終於將使用主機的資源,降到可允許的部份了,因此我再來分享了一下我修正的內容,供有需要的朋友們參考。

1. 移除所有會耗費CPU的外掛程式(Plug-in):

  最明顯的就是移除JetPack這個非常有用的外掛,這個外掛的流量統計功能,可真是個吃資源的怪獸,若不是自架主機,把它關掉也好,就用採外包的方式,用Google Analytics來取代即可。

change_google_bot_rate-09.jpg

2. 優化資料庫:

  安裝WP-Optimize這類的外掛程式,來幫我們刪除資料庫中多餘的資料,來做資料庫瘦身的動作。我自己經過最佳化之後,資料庫減少了近一半的容量,真是不可思議。

change_google_bot_rate-10.jpg

3. 重新安裝Wordpress,或降版本:

  更新新版的Wordpress,雖然可以解決一些Bug,並且新增一些功能,但從另一個角度來看,也意謂著主機的負擔也會愈來愈重,因此我認為,如果網站運作的很好,就不要一直的往上升級上去,以免整個網站愈跑愈慢,但如果已經升級上去的話,要如何降版本下來呢?

  關於這部份,我並沒有另外去爬文,我個人的做法,是直接從資料庫中,備份文章部份的資料表,然後重新再安新安裝一份Wordpress,最後再把備份下來的資料表,給匯進MySQL資料庫裡。

  此外,我們在使用Wordpress時,多多少少都會試用一些外掛程式,直接或間接之間,都會在資料庫中新增不少資料表,如下圖:

change_google_bot_rate-11.jpg

  因此,整個Wordpress砍掉重練的另一個好處,就是可以徹底擺脫這些包袱,而獲得重生…

  我這個原本跑的很慢的Wordpress,經過這樣的調整之後,網站的速度就變的非常的快,相信這樣對於虛擬主機的負載,應該會小很多吧。

, , , , , , ,

唐先生 發表在 痞客邦 PIXNET 留言(0) 人氣()