JASONT

生活 + 工作 + 情感

Archive for September, 2008

RRD 1.3.x file access timestamp update problem..

without comments

上禮拜把 RRD 從 1.2.x 升到 1.3.3 結果發現原本利用檔案時間做統計的程式發生問題,一直在研究 RRD 的 Change Log 看半天,後來翻 Mailing list 翻到八月的終於發現了問題,原來 RRD 1.3.x 之後把檔案 Update 存取部份改以 Memory Mapping IO 方式做來提高效能,不過沒想到在 Linux 上竟然會有問題,這樣的方式去存取檔案 Kernel 並不會更新檔案的最後存取時間,所以會有問題,Tobi (RRD 作者) 建議再還沒有確切的solution 前可以利用 touch 在 update 完後去更新一下檔案時間,這也不失一個辦法,在加上了 Touch 之後程式恢復正常運作了。

上禮拜也順便了搬動了部份統計程式到另一台主機,再以 NFS 方式分享給 Master 來存取,沒想到在讀取第一次後就不知為何會 Cache 住,即使 Slave 檔案內容有在 Update,但是 Master 怎麼看都是第一次存取時的內容,已經把所有的 NFS 參數都設遍了還是一樣,終於在今天確定了 Timestamp 不會更新問題也一併處理掉了,搞了好幾天啊…

原始討論:https://lists.oetiker.ch/pipermail/rrd-users/2008-August/014540.html

Written by jasont

September 30th, 2008 at 8:07 pm

Posted in 系統管理

Javascript 寫的類似小蜜蜂的射擊遊戲..

without comments

一個完全用 Javascript 寫的像小蜜蜂一樣的射擊遊戲,畫面圖形設計的都很不錯,富有卡通風格,只是不知為什麼我用 Firefox3 玩起來小 lag,不知道其他瀏覽器玩起來會不會就是了,直得介紹,真是肯花時間。

網址:http://www.rebelideas.co.uk/proto/test/

Written by jasont

September 25th, 2008 at 1:54 pm

Posted in 好站推薦

9/26 – 9/29 上(海)蘇(州)杭(州)

without comments

去年七月剛進公司時,九月就就遇到員工旅遊,不過公司補助是按年資的,剛進公司才兩個月只能補助近兩千,對於要一萬多的費用我實在是無法負擔,所以就只好乖乖待在公司留守,終於現在過了一年了,今年的員工旅遊選擇了大陸行,雖然行程只有四天,要跑上海蘇州杭州,但是至少比去馬來西亞玩水上活動比較吸引我。

最新狀況是颱風要來了,預計是29號會籠罩台灣,而我們要坐29號晚上七點多的飛機從香港回來,不知道有沒有機會滯留香港,睡機場可是沒多少人有機會體驗的呢!滯留隔天才回來的話說不定還可以賺一天的假,哇哈哈~真期待。

Written by jasont

September 25th, 2008 at 11:31 am

Posted in 玩樂生活

實現網站圖文分離 (二) – Mod_Proxy

without comments

想減輕 Loading,另一個做法就是使用 Proxy,Apache 本身的 Mod_Proxy 就能做到 Reverse Proxy,這個方式也有不少人使用,在真正的系統前端利用 Reverse Proxy 來做到分配請求,分散負載提高整體穩定及可用性,雖然這個方法不錯,但是並沒有辦法切合的解決我們的問題。

Reverse Proxy 收到請求後,將圖片的請求送到圖片主機,將其他請求送到程式的主機,如此一來,DNS 指向需要更改,而前端為求達到容錯的需求,機器的數量一定會是 2 的倍數,至少兩台,而若要將此圖文分離架構實現到各服務去,勢必前端兩台有可能是不夠的,而問題在無法保證整體效能及需要多少台機器能夠完全負載所有的服務下,這個方法並沒有辦法採用,因為不容易說服用戶端(當今天在系統穩定的狀況下,是否能對 Production 的服務進行異動得視產品部門允不允許)。

這年頭大家在成本上的考量都非常的斤斤計較,也因此在無法保證效能下應該是比較難要求加機器提供測試,更別提可能沒有辦法有太大幫助。

Mod_Proxy 方式,失敗。

(Mod_Proxy 設定也不詳述了,請自行看 Apache Docs)

Written by jasont

September 24th, 2008 at 12:02 am

Posted in 系統管理

實現網站圖文分離 (一) – Mod_Rewrite

without comments

圖檔和一般網頁文件分隔由不同主機處理,可以提升處理整體網站效能與速度,這點是大家都知道的(應該吧?),但是並不是所有的網站一開始建立都真的這麼做,而對於一般公司在建構網站時以疊磚方式建構,想到什麼加什麼,整個網站並沒有良好的架構規劃下,造成了日後想動動不了,動一塊磚倒整片牆的情形都有可能發生,這也正是一般網站面臨效能問題卻對於圖文分離無法做有效的改變。非常不幸的公司目前的狀況就是這樣,但卻是有苦說不出。針對這個問題嘗試了幾個作法,寫下來記錄一下。

最開始使用 Mod_Rewrite 來實現,在主機上使用 Rewrite,將所有是圖檔的路徑都改寫到另一台 IMG 主機,雖然是實現了圖檔由另一台服務的效果,但是還是有個問題,用戶一開始是對原始主機請求頁面本文(HTML),然後再根據 HTML 中向主機請求圖片 IMAGES,這時主機就會 Rewrite 將圖片路徑以 302 導向至圖檔主機,不過這樣就會造成頁面中的 Image 請求還是會向原使主機請求一次,並不符合我們想減低主機負擔的目標,雖然並不會真的需要處理將圖片吐給用戶的部份,卻還是一樣會有連線進來,做了兩次工,因此不算是達到完全降低負載的目標。

實驗失敗。

(不詳述 Mod_Rewrite 寫法,請自行參考 Apache Docs)

Written by jasont

September 21st, 2008 at 1:00 pm

Posted in 系統管理