• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            實用云計算環(huán)境簡述

             

            如今it領域沒聽說過云計算的絕對是out了,雖然大家都知道云計算,雖然很多高校很多專業(yè)都開設了云計算專業(yè),雖然很多人都在討論云計算,雖然也有少數(shù)人走在了應用云計算的前列,然而,可悲的是,大多數(shù)人對云計算的認識僅限于amazongooglemicrosoftibm有能力架設云計算環(huán)境,其他公司都靠邊,甚至唯他們的云計算才叫云計算,別的企業(yè)根本不可能做云計算,各級政府部門最搞笑了,動不動花多少錢引進某某云計算環(huán)境,填補某某空白,多少cpu多少機器每秒多少萬億次計算,最終是不是一堆浪費電力的擺設也沒有人知道,也沒人去過問。

            略感欣慰的是,很多企業(yè)都在務實地部署自己的云計算環(huán)境,大如騰訊、淘寶、百度、小如我們這樣剛成立的小公司,其實要部署一個私有云計算環(huán)境并沒有那么難,以我個人的經(jīng)驗來看,如果有一個精干的小團隊,幾個人一個月部署一個私有云計算環(huán)境是完全可能可行的。在我看來,所謂云計算就是分布式存儲+分布式計算,不局限于底下oswin還是*nix,也不局限于是局域網(wǎng)環(huán)境還是廣域網(wǎng)環(huán)境,也不管上面跑的是c++的程序還是javascript的程序,下面簡單介紹下我設計的一個即時查詢價格的云計算體系:

            我一直在win下開發(fā),win用得非常熟練,所以我把云計算環(huán)境部署在windows之上,當然也考慮到windows的機器眾多,tasknode可輕易找到非常多的目標機器,我部署的云計算環(huán)境主要分兩類節(jié)點,jobservertasknodejobserver主管任務切割、任務調(diào)度,tasknode是計算節(jié)點。另外還有一些節(jié)點,jobowner可連接jobserver并提交任務,并可查詢該任務的執(zhí)行情況,admin可連接jobserver查詢jobserver的狀態(tài)。

             

            其實這些上篇博客已經(jīng)寫過,我再講的詳細一點,看具體的執(zhí)行情況,首先jobownerjobserver提交package,這個package是一個zip文件,包含一組文件,jobowner提交package之后jobserver會根據(jù)約定的規(guī)則管理package,并在jobserver展開該package,如下:

             

             

            Jobowner連到jobserver之后,發(fā)出如下的命令到jobserver

            0x49 0x0 0x0 0x0 0x2 0x0 0xb 0x0 127.0.0.1 0x0 ppsget.dll 0x0

            {type:[0,1,2,3,4],rmax:5,wb:"pc",text:"諾基亞 e63"} 0x0

            上面是用我設計的一種混合顯示格式顯示的包數(shù)據(jù),可以看到里面帶上了ppsget.dll,這就是指定包內(nèi)部名,其實還可以這樣ppsget.dll:getpage,如此一個dll就可支持多個IJobTask輸出,getpage只是獲得其中一個IJobTask接口(關于IJobTask接口參考上一篇云計算實踐2的文章)。具體命令是json格式,主要是為了方便信息傳輸和解析。Jobserver接收到該命令之后,調(diào)用ppsget.dllIJobTask接口中的split函數(shù),將該任務分解,之后調(diào)度Tasknode執(zhí)行,tasknode收到jobserver發(fā)過來的任務之后,檢查包名稱,如果缺少就會主動向jobserver要求發(fā)送相應的包,并進行部署,待部署完成之后從包獲取指定的IJobTask接口,執(zhí)行該接口的map函數(shù),將結(jié)果按照約定的格式發(fā)給jobserver,最后由jobserver調(diào)用IJobTask中的reduce函數(shù)進行打包,最后將結(jié)果發(fā)給jobowner并記錄相關Log

            上圖中還可看到一個HashCrackCloud.dll,這是另一個云計算環(huán)境下破解md5密碼的dll,這個上篇文章也寫了一下,這里就不詳述了。

             

            為使得tasknode可適應各種機器環(huán)境,我把tasknode設計為一個dll,該dll內(nèi)部自己管理消息及任務執(zhí)行,該dll可被加載到各種容器進程(如gui進程、console進程、service進程)等執(zhí)行,看下我的tasknode和它的容器進程:

             

            這也算是我的得意設計吧,這樣設計的tasknodewindows系統(tǒng)下的確具有很高的靈活性。

            這樣的tasknode甚至可直接加載在jobserver進程,也可被任意win系列機器的任意進程加載參與運算,用主動加載或被動加載都很方便,極大的方便了云計算環(huán)境的部署,反正具體執(zhí)行的任務都由package完成,tasknode只要按照約定的規(guī)則部署 package即可,所以這種云計算環(huán)境是非常輕量級又非常靈活的,開發(fā)一個新的任務只要做一個新的IJobTask即可,目前我這套體系除了沒有考慮太多安全性之外,這個云計算環(huán)境的實施還是非常容易的,實際上我們這個價格查詢的后臺云計算環(huán)境只用了不到2周的時間就開發(fā)完成。

            再看下jobserver記錄的每個joblog

             

            log中可很容易的分析出一個job每個task的執(zhí)行情況,并可根據(jù)這些數(shù)據(jù)進行相應的優(yōu)化處理。

            之所以把jobservertasknode以及package都寫出來,主要是為了表達一個看法,要實現(xiàn)一個簡單的云計算環(huán)境其實并不難,有經(jīng)驗的團隊很容易就能做出來,參考下googlemap/reduce論文,按照自己的需要簡化實現(xiàn),真理在實踐中,如果只是仰望googleamazon,那就真的是在云中霧里,另一個想要表達的就是云的形式是多種多樣的,并不一定amazonegoogle的云計算環(huán)境才是標準的,對實用派來說,形式都是次要的,實用才是關鍵的。

            Posted on 2010-10-03 14:23 袁斌 閱讀(1816) 評論(1)  編輯 收藏 引用 所屬分類: 云計算

            Feedback

            # re: 實用云計算環(huán)境簡述  回復  更多評論   

            2010-10-07 12:05 by Corner Zhang
            看不到圖片誒!
            亚洲va中文字幕无码久久| 精品久久人人做人人爽综合| 女同久久| 久久天天躁狠狠躁夜夜avapp | 人妻精品久久无码专区精东影业| 午夜精品久久久久久中宇| 国产国产成人精品久久| 国产精品日韩欧美久久综合| 亚洲精品无码久久毛片| 久久Av无码精品人妻系列| 久久精品国产国产精品四凭 | 久久线看观看精品香蕉国产| 午夜福利91久久福利| 91精品国产高清91久久久久久 | AV无码久久久久不卡蜜桃| 一本久久久久久久| 无码伊人66久久大杳蕉网站谷歌| 中文字幕久久欲求不满| 久久精品无码午夜福利理论片 | 久久久久久免费一区二区三区| 青青久久精品国产免费看| 韩国无遮挡三级久久| 亚洲中文久久精品无码ww16 | 欧洲人妻丰满av无码久久不卡| 日本久久久久久久久久| 久久综合九色综合97_久久久| 欧美牲交A欧牲交aⅴ久久| 要久久爱在线免费观看| 久久精品国产WWW456C0M| 伊人色综合久久天天| 中文字幕成人精品久久不卡| 久久91综合国产91久久精品| 久久天天躁狠狠躁夜夜躁2O2O| 狠狠色丁香久久婷婷综合_中| 欧美成a人片免费看久久| 久久人人爽人人澡人人高潮AV| 国产精品欧美亚洲韩国日本久久 | 久久久婷婷五月亚洲97号色| 新狼窝色AV性久久久久久| 亚洲人成网亚洲欧洲无码久久| 人妻无码αv中文字幕久久琪琪布|