BlackHole開發日記-設置多個外部DNS並選擇

####2012-12-22redis

今天作了一天家務,週末比上班還忙啊。晚上9點半開始寫了點代碼,想把外部DNS選擇機制改成:最短請求時間。算法

晚上從9點開始寫代碼,終於到12點寫完了。開始嘗試用TreeMap作一個按照響應時間自排序的數據結構,相似redis的SortedSet。後來發現:若是嘗試改變TreeMap的key值,TreeMap並不會從新排序,到後面就會出現沒法預知的結果了!還有一個辦法就是寫一個incrScore的函數,而且限定score爲double類型,可是這時score就無法用自定義類型了,也不是很好用。服務器

因此最後乾脆在彈出時作了一個篩選,每次選出全部元素,並作一個篩選。後來這個算法就能正常運行了。數據結構

####2012-12-23函數

今天下午寫了一點代碼,嘗試把超時跟平均響應時間分開了,分爲正常響應時間、次數和超時次數。如何才能作到多個服務器可用性的判斷?這個問題有不少種方案,但願找到一個可行有效的方案。測試

這又涉及到業務的東西了。上班寫一堆業務,下班不想寫業務啊寫業務。想作一個使用Selector,多個DNS服務器同時forward,使用最快的結果做爲響應。可是後來測試,用途不大。優化

本身在這裏研究這些意義不大,這應該是一個很common的問題。晚上研究一下load balance和failover的東西。排序

感受這幾天寫的load balance的東西都太不成熟,須要等研究一下相關機制以後,再來繼續深刻。開發

今天也沒有想到其餘的優化點了。開發先到這裏吧,之後作一點推廣方面的工做吧,寫一個站點,而後把東西掛上去。老薛主機的下載速度太慢了,看來要找個地方把文件放進去。下載

相關文章
相關標籤/搜索