自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淘寶分布式并行計算四合一框架Fourinone

開發(fā) 開發(fā)工具 分布式
淘寶Fourinone是一個自主研發(fā)的分布式并行計算框架,他集成了Hadoop,Zookeeper,MQ,分布式緩存四大主要的分布式計算功能,F(xiàn)ourinone的功能強大用途廣泛,他實現(xiàn)了zookeeper的所有功能并進行了很多改進。

Fourinone同時提供完整的分布式緩存支持,包括中小型緩存以及大型集群緩存,他使用不同于map/reduce的全新設計模式解決問題,模仿現(xiàn)實中生產加工鏈式加并行處理的“包工頭/農民工/手工倉庫/職業(yè)所”方式設計分布式計算,他還可以當做簡單的mq使用。Fourinone整體短小精悍,就一個jar包沒有任何依賴,很方便嵌入式開發(fā)使用。本文將詳細介紹Fourinone的使用背景、原理和功能等

淘寶Fourinone(中文名字“四不像”)是一個四合一分布式計算框架,在寫這個框架之前,我對分布式計算進行了長時間的思考,也看了老外寫的其他開源框架,當我們把復雜的hadoop當作一門學科學習時,似乎忘記了我們想解決問題的初衷:我們僅僅是想寫個程序把幾臺甚至更多的機器一起用起來計算,把更多的cpu和內存利用上,來解決我們數量大和計算復雜的問題,當然這個過程中要考慮到分布式的協(xié)同和故障處理。如果僅僅是為了實現(xiàn)這個簡單的初衷,為什么一切會那么復雜,我覺的自己可以寫一個更簡單的東西,它不需要過度設計,只需要看上去更酷一點,更小巧一點,功能更強一點。于是我將自己對分布式的理解融入到這個框架中,考慮到底層實現(xiàn)技術的相似性,我將Hadoop,Zookeeper,MQ,分布式緩存四大主要的分布式計算功能合為一個框架內,對復雜的分布式計算應用進行了大量簡化和歸納。

首先,對分布式協(xié)同方面,它實現(xiàn)了Zookeeper所有的功能,并且做了很多改進,包括簡化Zookeeper的樹型結構,用domain/node兩層結構取代,簡化Watch回調多線程等待編程模型,用更直觀的容易保證業(yè)務邏輯完整性的內容變化事件以及狀態(tài)輪循取代,Zookeeper只能存儲信息不大于1M的內容,F(xiàn)ourInOne超過1M的內容會以內存隱射文件存儲,增強了它的存儲功能,簡化了Zookeeper的ACL權限功能,用更為程序員熟悉rw風格取代,簡化了Zookeeper的臨時節(jié)點和序列節(jié)點等類型,取代為在創(chuàng)建節(jié)點時是否指定保持心跳,心跳斷掉時節(jié)點會自動刪除。FourInOne是高可用的,沒有單點問題,可以有任意多個復本,它的復制不是定時而是基于內容變更復制,有更高的性能,F(xiàn)ourInOne實現(xiàn)了領導者選舉算法(但不是Paxos),在領導者服務器宕機情況下,會自動不延時的將請求切換到備份服務器上,選舉出新的領導者進行服務,這個過程中,心跳節(jié)點仍然能保持健壯的穩(wěn)定性,迅速跟新的領導者保持心跳連接?;贔ourInOne可以輕松實現(xiàn)分布式配置信息,集群管理,故障節(jié)點檢測,分布式鎖,以及淘寶configserver等等協(xié)同功能。

其次, FourInOne可以提供完整的分布式緩存功能。如果對一個中小型的互聯(lián)網或者企業(yè)應用,僅僅利用domain/node進行k/v的存儲即可,因為domain/node都是內存操作而且讀寫鎖分離,同時擁有復制備份,完全滿足緩存的高性能與可靠性。對于大型互聯(lián)網應用,高峰訪問量上百萬的并發(fā)讀寫吞吐量,會超出單臺服務器的承受力,F(xiàn)ourInOne提供了fa?ade的解決方案去解決大集群的分布式緩存,利用硬件負載均衡路由到一組fa?ade服務器上,fa?ade可以自動為緩存內容生成key,并根據key準確找到散落在背后的緩存集群的具體哪臺服務器,當緩存服務器的容量到達限制時,可以自由擴容,不需要成倍擴容,因為fa?ade的算法會登記服務器擴容時間版本,并將key智能的跟這個時間匹配,這樣在擴容后還能準確找到之前分配到的服務器。另外,基于FourInOne可以輕松實現(xiàn)web應用的session功能,只需要將生成的key寫入客戶端cookie即可。

FourInOne對于分布式大數據量并行計算的解決方案不同于復雜的hadoop,它不像hadoop的中間計算結果依賴于hdfs,它使用不同于map/reduce的全新設計模式解決問題。FourInOne有“包工頭”,“農民工”,“手工倉庫”的幾個核心概念。“農民工”為一個計算節(jié)點,可以部署在多個機器,它由開發(fā)者自由實現(xiàn),計算時,“農民工”到“手工倉庫”獲取輸入資源,再將計算結果放回“手工倉庫”返回給“包工頭”。“包工頭”負責承包一個復雜項目的一部分,可以理解為一個分配任務和調度程序,它由開發(fā)者自己實現(xiàn),開發(fā)者可以自由控制調度過程,比如按照“農民工”的數量將源數據切分成多少份,然后遠程分配給“農民工”節(jié)點進行計算處理,它處理完的中間結果數據不限制保存在hdfs里,而可以自由控制保存在分布式緩存、數據庫、分布式文件里。如果需要結果數據的合并,可以新建立一個“包工頭”的任務分配進行完成。多個“包工頭”之間進行責任鏈式處理??偟膩碚f,是將大數據的復雜分布式計算,設計為一個鏈式的多“包工頭”環(huán)節(jié)去處理,每個環(huán)節(jié)包括利用多臺“農民工”機器進行并行計算,無論是拆分計算任務還是合并結果,都可以設計為一個單獨的“包工頭”環(huán)節(jié)。這樣做的好處是,開發(fā)者有更大能力去深入控制并行計算的過程,去保持使用并行計算實現(xiàn)業(yè)務邏輯的完整性,而且對各種不同類型的并行計算場景也能靈活處理,不會因為某些特殊場景被map/reduce的框架限制住思維,并且鏈式的每個環(huán)節(jié)也方便進行監(jiān)控過程。

FourInOne也可以當成簡單的mq來使用,將domain視為mq隊列,每個node為一個隊列消息,監(jiān)控domain的變化事件來獲取隊列消息。也可以將domain視為訂閱主題,將每個訂閱者注冊到domain的node上,發(fā)布者將消息逐一更新每個node,訂閱者監(jiān)控每個屬于自己的node的變化事件獲取訂閱消息,收到后刪除內容等待下一個消息。但是FourInOne不實現(xiàn)JMS的規(guī)范,不提供JMS的消息確認和消息過濾等特殊功能,不過開發(fā)者可以基于FourInOne自己去擴充這些功能,包括mq集群,利用一個獨立的domain/node建立隊列或者主題的key隱射,再仿照上面分布式緩存的智能根據key定位服務器的做法實現(xiàn)集群管理。

FourInOne整體代碼不到100k,跟Hadoop, Zookeeper, Memcache, ActiveMq等開源產品代碼上沒有任何相似性,不需要任何依賴,引用一個jar包就可以嵌入式使用,良好支持window環(huán)境,可以在一臺機器上模擬分布式環(huán)境,更方便開發(fā)。

開發(fā)包里自帶了一系列傻瓜上手demo,包括分布式計算、統(tǒng)一配置管理、集群管理、分布式鎖、分布式緩存、MQ等方面幫助掌握fourinone的全部功能

下載地址:
http://www.skycn.com/soft/68321.html。

博客地址(內有跟hadoop的對比和基準測試):
http://3503265.blog.51cto.com/

【編輯推薦】

  1. Apache .htaccess文件的8個用法
  2. Hadoop 從Yahoo向Google的技術轉折
  3. Hadoop集群與Hadoop性能優(yōu)化
  4. Facebook實時信息系統(tǒng):HBase每月存儲1350億條信息
責任編輯:彭凡 來源: 51CTO
相關推薦

2012-07-25 10:36:05

2012云計算架構師峰

2021-06-01 05:51:37

云計算并行計算分布式計算

2012-06-01 15:12:00

淘寶分布式計算Fourinone2.

2012-05-11 10:54:16

Qcon淘寶Fourinone

2012-10-25 17:48:15

Fourinone云計算架構師峰會

2012-11-06 13:58:26

分布式云計算分布式協(xié)同

2012-02-27 09:28:34

HadoopFourinone淘寶

2012-08-17 09:32:52

Python

2023-10-26 18:10:43

分布式并行技術系統(tǒng)

2015-08-26 10:18:40

hbase

2010-06-03 19:46:44

Hadoop

2011-09-16 09:52:58

兄弟復合一體機

2011-04-20 17:15:21

并行計算

2023-03-09 11:35:40

2024-03-01 09:53:34

2023-11-01 20:10:53

分布式并行技術

2017-09-01 05:35:58

分布式計算存儲

2011-09-18 22:34:27

兄弟復合一體機

2012-05-15 15:54:47

復合一體機推薦

2012-06-12 15:15:23

兄弟復合一體機
點贊
收藏

51CTO技術棧公眾號