關於租約,關於我的第一篇技術博客

 

           我從高中開始就有寫點東西的習慣,不過都是一些對某些事情的感想,對於技術博客倒真沒寫過,有的也僅僅是轉載。上次在新浪微博裏看到很多IT牛人建議,如果貢獻不了代碼,貢獻一些技術文檔也好的,於是我採納了他的建議,而且我實習的室友也建議我將關於這部分內容寫下來,作爲我的第一篇技術博客。

      我現在越來越感覺到,計算機中的大部分東西都是來自於生活。比如接下來要討論的租約。迴歸到生活中,從主客體的角度來看,租約是關於房東、房客和房子三者所發生的,其中主體是房東和房客,客體是房子。房客需要和房東簽訂租約,也就是一份協議,來保證房客可以在協議裏規定的時間內租用這個房子。房東有了租約之後,正常情況下就不會安排房子給其他房客了,而其他房客也不會再去租這個房子了。那麼對應於計算機來說,特別是分佈式系統來說,這裏的房客就是客戶端,而房東是服務器端,房子是所謂的資源,除了這三者之外,還有一個時間的概念,租約裏必然要涉及到時間,因爲過了租約中規定的時間之後,這個租約就失效了,也就是沒有法律效力了,而在分佈式系統中,則要根據具體的應用設定這個租約的時間。所以在我的理解下,分佈式的租約是關於客戶端、服務器端、資源以及時間的一個四元組映射。

     那生活中,我們肯定是存在續租這麼個概念的,一般續租是需要在當前租約失效之前達成的。而在分佈式系統中,也會存在這麼一個相應的過程,就是當我的租期還有一小段時間的時候,這個時間是可以設定的,就去像房東請求是否可以續租,如果可以的話,那就可以繼續執行續租的租約。另外,不同的房客從不同的中介得到的房源信息可能不一致,這就需要這個中介及時的從中介中心得到最新的房源信息,於是在分佈式系統中,資源是帶有版本號的,來保證客戶端所要操作的資源是最新的。

     差不多會涉及到上述這些概念,但是在不同的應用中,租約的概念還是有所差別的。有的租約相當於鎖機制,有的租約相當於領導權,這在淘寶的tfs\tair\oceanbase等中都有所反應。

      關於的租約的技術文檔還是挺多的,建議有興趣的朋友可以網上搜來看看,我的一些淺薄見解和認識就到這裏,歡迎指正和發郵件回覆,我的郵箱是:[email protected]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章