大數據

聰明的Mac osx本地雲:同一生態的雲硬件,雲裝機,雲應用,雲開發的完美集

本文關鍵字:native cloud,uniform cloud os and client os,利用PC打造雲平臺。caching as cloud, sync as cloud

在前面我們講到多種雲平臺和雲OS的選型,像群暉,dsm之類都是為yunos專門建立起一種硬件平臺和軟件系統的典型,它有點像極路由,其appmodel和各種擴展都是基於web選型,它們的區別也許只是一個:一個面向大容量存儲服務,一個面向連接服務。它們是設想與生產環境和工作環境一起協調工作的,但這三者明顯有功能和職責相交的地方,但如果,存在有一種硬件軟件選型,既可以負責起日常工作需要的那些任務,還可以同時作中心存儲等任務而不需要另外添置新的硬件,不是更好麼?這既節省了一臺硬件,又節省了一個OS的開銷。比如,就把PC同時當NAS當工作環境當路由服務,不好麼?

在前面在《把群暉+DOCKER當WEB雲OS》一文中,我們討論了雲OS從硬件到一系列其它方面的選型,包括開發。那麼新的集成方案可以是同類的東西麼(yet another alternatives),這需要涉及到一系列問題:

首先,生產環境的客戶端和服務端能否做在一起,nas和軟路由強調自身作為服務性環境存在,如果將其移到客服同體,比如在pc上開一虛擬機或docker或其它什麼方式虛擬黑群暉,這會造成資源搶佔效率低下,這臺pc作為客戶端也需要配備大功率的顯卡,顯得不倫不類,但這也不是什麼大問題----對於個人使用是可以,我們在前面也涉及到多種host/guest共體的選型,host其實也可以作為管理OS。這其實我們第一種方案就是這樣的《利用colinux和mailinabox在本地打造mineportal2》
其次,客戶app和服務性app是否真的可以共存一PC中,比如使用容器技術分隔資源配額,互不侵犯。這樣還可以統一傳統的包服務和容器服務,像沙盒技術可以同時用在客戶端和服務端APP打包技術中,只不過服務性app或容器需要透出服務,而且通常採用的web UI模型,其實普通的GUI就夠了,因為也有remote appmodel這種程序,如果非要涉及到web,可以僅把web當ui,不要把它當一種全棧的appmodel,比如利用靜態網站生成器的原理,treate web as only ui ------ 其實app提供一種ui就能在其上打造出一個appmodel而不論你在其中採用的UI方案是什麼。

第三,關於同步,在前面我們看到群暉是基於客戶端與服務端sync的,是工具性質的,更前面我們看到cloudwall這種是基於pouchdb這種數據庫級的自動化sync的。----- 其實,一個appmodel,只要它是遠程分佈的,只要它提供客服sync方案的,這基本都是雲。而云,這個概念廣得很,其實雲不一定要跟OS有關,跟採用何種內容同步有關,不一定跟開發有關,它可以是各種加速,比如,雲加速下載就是把熱門資源用自己的服務器緩存起來,像百度雲和迅雷一樣,也可以是雲計算,也可以是區塊鏈。
第四,各種虛擬化和devops支持-devops其實就是雲開發的代名詞。這些我們慢慢道來,在《TERRA++》文中我們提到可編程可以成就devops和CI。--- 其實可碎片化就能可持續集成,像文檔化的xml,可編程化構建的容器語法都是,這些在上篇《terra++》中有述。

綜上,它們在技術上他們也是可以統一的只是選型不一,但都可以是雲。所以是可行的。

Osx即是這樣做的,還做得特別聰明,為什麼是osx呢不是win呢?win沒有集成太多的雲服務,且除了pc只有mac是最接近可用的生產力工具了,而後者剛好也做得很不錯很具典型。

osx的native cloud模式:remote gui appmodel+caching as cloud

Osx生態沒有專門的server版,是直接在osx上建立的,要說有,也是一個叫mac osx server的普通app,但osx被當作雲還有其更多方面。

首先,其icloud與finder是整合的,數據存儲在蘋果的服務器,document文件夾(osx叫它文稿)通過finder作同步客戶端,這是第一步,第二步,配合osx server的描述文件管理器,icloud數據還可以caching在另外一臺裝有osx server的機器上作本地同步,vs sync as content distribution,streaming還沒有發展起來,caching其實也是一種聰明的方法。

使用osx yun,你不必自建那麼多服務,這些服務商的壽命比你的壽命還長,還有,這種中轉性的服務足夠了。比如我github一下,也可以混用客戶端與服務端。本地只需作箇中轉不需要自建服務。而且osx的各種icloud app,比群暉的那些更好用。比如備忘錄,圖片上傳多端可見,

其次,osx是直接把任何服務性的app都當成雲APP的,這就是我們在前面一直談到的,vs web as cloudappmodel,其實remote guy appmodel也是雲app的一種,內容分發方面,如上所述,現如今5g和streaming技術不太發達,這種appmodel還遠遠沒有發展起來導致的。

第三,osx server負責管理硬件,管理APP緩存,數據的分發(內容分發),甚至其還管理裝機數據的caching,即time machine(time machine這不就是群暉等的active backup嗎),而且,osx server的做法更聰明,timemachine這類app是客服共體的,就像finder作為同步客戶端一樣。而且mac它的生態更統一,涵蓋整個PC還有IOS這種可移動端。

下面來討論一下具體做法,並把其各種方案和與群暉類似的其它方面作一對比

類群暉,把雙盤mini打造成mbp的matebox:裝機服務器數據恢復器,訪問點接入器,應用服務器,和devops開發器

OSX的同步和appmodel討論過了,然後是其它。

解決其裝機維護的問題:

我們的例子中,用了一臺雙盤的Mac mini(一般裝osx server一盤作time machine backup),一臺macbook和一臺iphone來發明,在MINI在這主機上綁定破解的server,我還配合使用了oray三件套(蒲公英,花生殼,向日葵控控a2),因為mini是屬於無屏環境,只能通過網絡顯示器,如ipkvm的向日葵控控a2這種來解決裝機和維護問題(Mini的設計要是加個小led屏幕和有限鍵盤,可以啟動免去外插鍵盤和hdmi顯示屏就好了,其實群暉也可以這樣,只是它有一個不壞的rom,裡面有bootloader,不用像普通OS一樣裝機),Osx server可以提供多硬件管理控制和細微的企業各級人士權限控制。十分強大。利用上述工具裝完機後,可以利用a2遠控遠程裝機,oraybox組vpn,花生殼穿透建站等,後期還可以time machine恢復,icloud恢復數據,etc..在移動端也可以這樣做。這種生態集成程序是空前的。

解決其多開虛擬機的問題:

唯一與群暉系列不好比較的是osx 沒有集成vmm這種東西,還有docker,不過這也可以通過下載appstore或第三方的同類服務來代替。我下載的是破解版的paraelle desk(集成docker/vagrant可以當devops使用),當然其它方案組合也是可以的,,客服共體的優勢不但是GUI是共享的,而且APP生態也是共享的。


原來的bcxszy,在序言中不光是寫了一體化語言,還寫了一體化uniform web/native選型,中途我們改成了JS,現在我們回來了,現在的bcxszy2,加了一體化平臺選型,開發轉用terralang,在整個語言選型中,我們追求的都是一種平臺與遠程開發兼容一體的語言。,從下一篇開始,我們寫《利用terra++模擬cpp》,用terra++,是因為只有自己發明的語言,你才能用好,就像我們一直在發明自己的dbtinycolinux一樣。


(此處不設回覆,掃碼到微信參與留言,或直接點擊到原文)

qrcode.png

Leave a Reply

Your email address will not be published. Required fields are marked *