Lyceum Database 最佳化

幾天前 Lyceum 官方上發出一篇文章「 Last Night, a B-Tree Saved My Life (or: how to do a simple index audit to fix a slowquery)」, jjb 試圖利用 index 來加速 table 的 join 速度。

其實 Lyceum 裡面使用了大量的 Join 資料,在一篇文章裡,他要 join post2cat/catetories 才能判定該篇文章的所在部落格,而為了應付這麼大量的 join 作者提供了一個方法來解決此問題。

在 Mysql 裡面執行下面這一行,他把 category_id 產生 index 即可以加快速度:

ALTER TABLE post2cat ADD UNIQUE INDEX category_id (category_id,post_id);

使用後,速度還真的有明顯的上昇。

另類的 SPAM ?

這幾天我待審核的留言裡面多了幾篇的留言,可是我一直沒有去審核他。因為我搞不太清楚,這個留言倒底是廣告或是只是單純的留言。

Spam comment

智邦網摘師的 Spam 行為的事件裡面,我們可以看到大部份的 blogger 都可以接受引用其文章網址,但是無法在留言裡忍受變像打廣告的方式。不過這幾個留言和該次的事件有很大的不同,因為我上了他的留言的網址去找了一下,並沒有相關的引用。而另一方面,打廣告就算了,你也不必要把我的文章裡的一句話拿下來,貼到留言裡,很擺明的就是廣告嘛。

剛上去看了一下該使用者的網頁,是很類似奇摩知識+ 的使用情況,提供一個使用者發問的平台,並且有人會回應。並不是說這樣的網頁不好,比一些外國的色情網頁留言,或是詐騙網頁留言的網站還好多了。不過廣告的行為就是廣告的行為,並不會因為你是比較有內容的網頁,就不叫廣告。

三篇留言我全砍了,希望這種事不要再發生了。

pop3 Authentication For Lifetype

之前發表過一篇「[blog] lifetype 使用 BBS 的帳號和密碼」,不過在 Lifetype 更新到 1.1 之後,此方法就不適用了。因為 lifetype 1.1 把認證程式作大幅的修改,讓認證程式可以隨著不同的認證方法,自行修改認證程式就可,不用更動到太多部份,讓他更有彈性。

當然這個程式跟原先的 patch 的功用差不多,所以就不作詳細介紹了。使用方法也很簡單,下載 pop3userdataprovider.class.php.txt 後,將他放置到 class/dao/userdata 下,並且修改 config/userdata.properties.php

新增下列幾行程式,把相關訊息改成您的站台:

#
# pop3 user data provider
#
$config = Array(
  "provider" => "POP3UserDataProvider",
  "createBlogIfNotExisting" => true,
  "pop3server" => "xxx.twbbs.org",
  "pop3port" => 110
  );

如有任何問題,請在此留言,或是寄信給我。目前 blog.segaa.net 正在使用此程式。