Home » 2006 » June

INSERT ... ON DUPLICATE KEY UPDATE

把放很久的文章整理出來。

這裡看到 4.1 之後的版本可以有 INSERT ... ON DUPLICATE KEY UPDATE 這種用法:MySQL Counters。引用的原文在 INSERT ON DUPLICATE KEY UPDATE and summary counters. 這篇。

如果你對於 race condition 有瞭解,你可以在文章裡看到這種用法將本來要自己做的檢查交給 處理:

INSERT INTO ipstat VALUES(inet_aton('192.168.0.1'), 1, now()) ON duplicate KEY UPDATE hits = hits + 1;

這個功能在 4.1 以及之後的版本有提供。

Google 的 Pay-Per-Sale

也開始測試 Pay-Per-Sale 了,也就是完成交易後才付出廣告費用:

Pay-Per-View 容易以大量的假流量偽造,而 Pay-Per-Click 則有假點擊的問題。當時就有人提出 Pay-Per-Sale 的觀念:在交易成立後才需要付廣告費用,而這種方式幾乎無法偽造。

的發展看了兩年,終於推出 Pay-Per-Action 了... (跟以往一樣,都先找一批人測試,然後看效果如何並進行評估)

加上前陣子剛好又有風聲要搞 Google Payment,而發言人跳出來澄清說他們不是要做類似 的東西,看起來還頗有樣子的,接下來就是等時間了 :p

Prefetching 的問題

這看到關於 Web Accelerator 如果使用 Prefetching 會造成的問題:Web acceleration without prefetching

有些網站設計上有些瑕疵,會用 <a href="blah.php?action=suicide">刪除帳號</a> 這種方法來傳指令,然後自以為很聰明的用 Javascript 跳出一個 Yes/No 的視窗確認。這種網站在遇到 Prefetching 時就會... 舉個例子說, 的 logout 就是一個例子。

比較「中性」的方法是放棄這麼激烈的作法,改用 DNS cache,然後先連線到對方主機,但先不要送資料。這樣可以省下 DNS 查詢的時間以及建立 TCP Connection 的時間。只比原來 Prefetching 的方法少了最後抓資料的時間,但卻讓穩定性上升不少。

受傷

騎腳踏車受傷,右手手掌骨折,縫針打鋼釘,要修養一個月 O_O 如果有事情,請儘量打手機找我,用單手打字不太方便 :p

PS:該搞 Podcasting 嗎?o_O

Update:突然想到,我現在沒辦法在實體商店用信用卡 O_O 這樣就不能跑出去偷買東西了 :~

世界盃

世界盃開打,結果賭博網站掛掉:UK Betting Sites Hit By Outages During World Cup

的說明,這次的「經濟規模」是 2002 年的五倍,但另一方面,每當有重大比賽時,這些網站就會被勒索,如果勒索不成就會遭到 DDoS 攻擊。所以目前還不是很確定這些網站掛掉是因為量太大的關係,還是因為有人惡意攻擊。

RSS 2.0 的定義

看到 這篇 RSS 標題編碼問題 想到之前碰到的問題。

之前在寫 時發現,如果只照著 Spec 上送 <description>內容</description>,在 上看不到斷行,後來決定看 處理的方法,發現除了 <description>內容</description> 以外,還多了 <content:encoded>內容</content:encoded>,照著這個方法作就會有斷行。

也許該試看看 Atom 1.0...

Archives