1. 程式人生 > >獨家揭祕:阿里小程式的一雲多端!看這篇就夠了!

獨家揭祕:阿里小程式的一雲多端!看這篇就夠了!

摘要: 阿里巴巴小程式一雲多端的整體戰略,以及阿里小程式後續為開發者提供的雲服務(雲應用、雲開發等)、開發者工具鏈(IDE、外掛、SDK等)、跨端框架能力說明。同時結合繁星計劃後續提供給開發者的扶持和ISV的權益體系做一個整體的介紹。

專家介紹

視訊回放

https://yq.aliyun.com/live/1097

阿里小程式的一雲多端

相信絕大部分同學知道阿里一雲多端的專案,最早始於19年三月份在北京雲棲大會上,阿里雲的CEO在雲棲大會上對外發布了一雲多端的專案。

一雲多端是什麼?

大家今天常見都是微信小程式,微信小程式實際上是一個變化的體系,在它上面開發一個小程式,只能在微信上跑。是不是可以有另外一種方式,能不能開發一個小程式,比如:我寫了前端程式碼,既能在微信上跑,也能在支付寶、高德、頭條、百度、哪裡都能跑。

這樣對研發同學的成本要低很多,這就是多端的概念。

相比較我們App的生態體系,微信其實類似於iOS,他自己自成了一個閉環。

阿里巴巴想做的事情就是我們希望類似於 Android 這樣一個開放聯盟,能形成整個除了阿里內部,包括阿里生態公司,包括外部的一些公司,都能共用整個小程式的一個框架,共用小程式的一個體系,這是當時對外宣稱要做一雲多端目的。

一雲指的是什麼呢?

一雲指的是:給大家舉個例子,我們今天在做微信的小程式,我們都知道他的ID裡其實是有自己的雲服務的,那我們在做支付寶小程式的時候,大家也會感知到它其實也是一個閉環。

那我們從業務的視角來看,比如:我作為星巴克的開發者,我肯定希望我後端的服務都供用在我自己的服務裡,讓所有的端都能供鏈到我這裡,這才是對業務來講價值最大、最好的一個點。這就是阿里巴巴想強調的一雲,通過我們這樣整體的雲,來支援我們這樣所有的端。

這是一個大的背景,具體我們來看一下,微信小程式大概在2016年開始做,差不多歷時了三年才有了今天我們看到的小程式這樣一個繁榮的生態,真正讓大家感知到這樣一個風口差不多是在18年,大概是跳一跳那個小程式開始火起來以後,大家才感知到小程式原來可以這麼玩,越來越多這樣的玩家入駐了。

截止到2018年底,全網的小程式已經超過了200萬,整個小程式的開發其實呈現出井噴的現狀。

200萬是什麼概念呢?

現場有多少同學知道,當前iOS系統中的 App Store,它裡面有多少應用?

據我瞭解的一個數據 ,18年的時候,整個 App Store 裡也才230萬個 App 應用。大家看小程式這個行業,才經歷了兩三年基本已經到了我們這樣一個量級,根據我們現在瞭解的一些調研報告的資料,2019年可能預計會到500萬的量級,今年還會有一個很快速增長的過程。

整個微信小程式活躍使用者的增長量其實是趨於平緩的,獲客成本其實是逐漸逐漸的高起,整個發展的核心已經由傳統意義上的拉新到現在更多的是運營。

微信小程式的活躍使用者現在已經有7億多,整個微信App,活躍使用者也才10億到11億左右,它的天花板其實已經很低了,隨時就可以觸碰到,在這種背景下,我們作為一個開發者,作為一個企業,其實是希望能夠有更多其他平臺的擁抱 ,我們可以通過其他的渠道來獲取到我們這樣的流量。

阿里巴巴正在做的事情是:會全面的擁抱小程式,為小程式提供全面的技術、業務、生態的支援,能夠幫助我們的企業在未來的雲生態裡面走的更遠。

下面這張圖,是我們剛才介紹的資料:

左邊的資料是我們小程式的增長量,17年資料是100多萬,到18年已經200多萬了,按照我們現在預測的資料,到了2019年可能有四五百萬,基本上是每年翻倍的節奏。

右邊的資料是全網小程式使用者數的規模,大概分佈情況是:支付寶大概是四五億,微信大概是七億左右,百度大概是兩三億,加在一起應該有十幾億的資料。後續隨著越來越多大平臺的參與 ,小程式的使用者規模也會越來越大的。

具體到阿里巴巴,我們有一些面向場景主流的端,比如:我們面向電商購物場景的淘寶,面向出行領域的高德,面向我們金融和本地生活的支付寶,面向這種企業服務這塊的釘釘,這些端都會全面的擁抱小程式。

具體這些端後面會做什麼,接下來幾位講師會和大家詳細分享,我們在不同端裡,小程式具體是什麼樣的玩法?會給我們的開發者提供什麼樣的業務能力?我在這裡就不做太多的介紹了。

對於個人開發者,對於企業而言,當前阿里在做的一雲多端對我們來講有什麼價值,對我們來講有什麼樣的機會,我們可以看一下這張圖。

我們傳統意義上講,大家其實都知道小程式,大家能感知到的就是微信,因為只有這樣一個聲音,後續我們期望能讓大家知道小程式不只等於微信小程式, 阿里其實也會有相應的能力。除了阿里以外,大家已經知道的,像今日頭條,像百度也都陸陸續續加入了小程式戰場,後續小程式真的不等於就是微信小程式了,全網主流平臺都會去做支援。

其次我們傳統意義上,小程式在微信覆蓋的使用者群體,覆蓋的場景以社交場景為主,後續隨著更多的App和場景的加入,我們的小程式基本上可以覆蓋全場景,不僅僅是當前的社交 ,我們有支付場景、有金融場景、有出行場景、有企業服務場景,有越來越多的場景。隨著阿里小程式戰略的演進,後續會把阿里小程式的開發框架、開發標準對外開放,除了阿里內部小程式能用以外,整個阿里系的一些App,比如:像微博等一些App都可以直接執行阿里的小程式。再往後會把開發框架開放給企業自己的App,可以真正的做到一個小程式在全網都能跑,能支援全網的使用者覆蓋。

基於這樣的背景,現在這樣流量紅利,如果我們不僅僅看微信的話,流量紅利其實又有一波已經進來了,不僅僅是微信平臺,現在全網已經有十幾個小程式的平臺在加入到戰場,整體的活躍使用者現在已經能突破十億以上,這種小程式的入口其實也很多。

從場景上來說:除了像微信社交場景以外,電商的LBS、搜尋、內容,能覆蓋的場景也是會越來越多的。

對企業而言,對個人開發者而言,價值在於:現在中國這個人口紅利已經逐漸的消失了,如果自己做一個App,獲客成本其實已經很高了,即使是微信小程式做了這麼長時間,微信小程式的獲客成本也是越來越高。

我們如何來降低獲客成本,一個比較好的方式就是藉助不同App平臺,通過不同的小程式平臺來獲取我們的流量扶持,能夠通過低成本的方式來獲取我們的客戶,這是一個我們價值點所在。

不同的這個App有不同的業務能力,比如:高德,大家更多的就是用它的LBS能力,我們可以獲得位置,出行資料等等,可能這些能力你在微信裡是獲取不到的,每個不同的開發者,所面向的場景是不一樣的,所要的業務能力也是會有比較大的差異的。如果可以藉助平臺的這個業務的賦能,讓業務場景能夠快速的擴充套件,這對大家來講是一個比較好的機會。

從阿里本身的經濟體而言,其實會給不同的開發者提供業務的賦能,比如:一些API的能力,地圖的API、商家的API、風控的API、支付的API,我相信大部分的開發者可能更多的都是奔著更好用的業務能力來的。

對企業大的戰略而言,也有幾個比較好的點。一個點是前面說的,微信小程式的獲客成本已經逐漸提高了,其他一些平臺屬於剛起步的階段,流量其實相對來講還屬於比較充沛。如果能抓住這樣的機會,能早一點進去,流量的獲客成本相對比較低的,業務的扶持也能讓自身的小程式,自身的業務有快速的發展。

通常情況下,大家都知道,雞蛋不要放在一個籃子裡,因為放在一個籃子裡風險是比較高的,如果我們把所有的業務全部承載在微信的小程式裡,萬一微信的小程式開發的規則以及的業務變化,實際上對大家自身的業務影響是很大的,甚至是致命的影響。多元發展其實是所有開發者,所有企業都必須考慮這樣的點,今天剛好也確實是有這樣的機會。

多端小程式的價值

多端小程式對大家到底有哪些核心的價值?

第一個是場景,在於我們傳統意義上講微信,更多的是我們有人際關係的關係鏈在微信上,其他的場景,比如:我是做汽配相關的,這時候我在微信上很難獲取到適合的使用者群體。

我不知道大家有沒有看過一份資料:現在支付寶、微信、百度的小程式的留存率,從資料上看,支付寶的小程式留存率是最高的,為什麼呢?原因在於支付寶是一個場景化的App,它主要面向的是一個支付的場景和本地生活化的場景,大家用這個App的時候其實就是它的目標使用者群體,基於這個場景來開發App,其實就很容易獲客,如果我們的業務其實做的還ok的話,這批使用者的留存和後續的轉化其實是很高的。

第二個是流量的價值,流量的價值在於由單一的微信生態流量逐漸轉變為全網的流量,因為我們有越來越多的App加入到小程式的戰場。除此之外,像阿里內部的高德、釘釘、淘寶是有大量的企業能力,大量的裝置能力的資料在裡面,通過這些能夠幫助大家更好的獲取流量。

第三個是業務,相比較其他的平臺,阿里的一個很大的優勢在於相對的業務能力板塊是比較全的,金融支付能力、企業的服務能力、物流能力,一系列的能力都可以幫助大家來做賦能,讓大家更好更快的開發自己的業務。

第四個是使用者粘性,之前資料也舉例了,大家通過單一渠道來獲取以及通過社交渠道來獲取的流量,相對來講粘性是比較差的,因為它使用的場景是面向我們當前社交的,我們跟朋友的聊天,不大會關注其他的場景,可能也有一定的轉化,但這個轉化率一定是不高的。如果是奔著特定場景的,相對來講這個粘性要高很多。

第五個是成本,一個產品它的生命週期如果從剛起步到成熟到後續的衰落,那麼微信當前就處於偏成熟的階段,這時候大家認知的很多,使用的人也很多,很多人去搶那一點流量,成本逐漸越來越高,如果有一個新的戰場,一片新的領域,大家能早一點有機會進去,這個時候獲客成本其實是很低的。

第六個是品牌的效應,我們可以讓整個小程式的品牌,能夠更好的擴充套件,能做到所有人都能夠共知的狀況。

前面介紹的是小程式的背景,對當前的機會所在,具體到阿里小程式,這張圖就是阿里產品的能力大圖,對應的小程式解決方案,從最底下看是我們阿里經濟體的能力的輸出,後續大家通過我們的阿里小程式雲,可以獲取到阿里內部的所有這些業務能力,支付寶的能力、釘釘、高德、淘寶所有的能力都會通過小程式雲來對外進行透出。

小程式雲本身它會提供哪些能力呢?

小程式雲裡包含兩個部分:

第一部分是雲應用,雲應用來幫助大家來做線上的資源編排和應用拓廣,比如:作為一個開發者,我們可能有自己的後端服務,後端服務可能想自己去做部署,部署是有成本的,可能首先要去買ECS、買伺服器、買資料庫、買IDS、還得買流量、買官網IP,買好了一系列的原子的原產品,接下來要做的事情就是把環境給打好,具備一個網路環境,具備可訪問的環境,有了可訪問的環境,接下來還得想怎麼去做部署,做更新,雲應用核心所解決的就是以上事情。

第二部分是雲開發,雲開發簡單地講它是一個Serverless 的套件,雲開發不僅僅是面向開發者,在開發者的領域會提供函式計算的能力、儲存能力、資料庫的能力,同時也會面向運營測,會提供你當前小程式端測的資料統計分析,提供對應的使用者反饋的能力,接下來還有類似做運營提供圖片設計的線上能力,這些能力都會通過 Serverless 的套件對外透出。

具體到業務會更多,阿里經濟體大家想核心想使用的業務能力,比如:雲視訊、內容安全能力等都會通過當前的 Serverless 的套件對外透出。另一個是小程式雲的整體價值,前面強調的一雲多端的一雲目的是什麼,一雲並不是希望大家都把資料統一的放在阿里雲上,一雲的核心對客戶支撐的價值在於我們把所有的資源都聚攏在一起,而不是面向不同的場景,來提供不同的後端服務。這樣是一種極大效率的降低。那另外一個是期望大家資料能統一,有了資料以後,我們才好有後續基於資料的運營,基於資料的業務分析和擴充套件,這是我們希望做到一雲的效果,通過一朵雲來支援整個小程式業務的發展,支援企業,支援我們個人開發者業務的發展。

如何能做到一雲多端?

中間有兩層是比較關鍵的點, 在小程式雲上面大家可以看到有一個本地開發者的IDE,開發者的IDE裡核心提供了兩部分的能力,一部分是本地的開發環境,是大家基於這個IDE可以完成全網小程式的這個開發,構建,除錯的能力。第二部分是雲服務的套件,我們所希望使用的雲能力都會通過IDE透出,通過IDE直接進行使用。

我們如何能做到多端?

多端核心是不同的端得有統一的標準,我們就會在這一塊給大家提供一整套端的開發標準,我們的元件、API的介面定義、DSL、埋點規範、跨端的開發框架、小程式的執行環境,這些能力如果都提供了,都統一了,大家完全可以只要做一次前端,全網都可以跑。我們當前的規劃是第一步把阿里內部所有的APP針對小程式的標準統一,第二步會支援整個阿里系的、阿里生態的企業的APP;第三步是向全網提供對應的小程式框架。

雲應用有哪些能力?

雲應用核心是期望幫助大家後端有應用狀態下的運維部署的成本。對應到這張圖我們可以看到,最底層大家公用的其實都是阿里雲的ECS,RDS,如果服務多,還有SLB,公網的出口IP,都基於最底層的s層資源來幫助大家來做後端應用的運維互動。

第一部分是資源編排能力,資源編排是你買了一堆原子的能力,基於這些能力幫你搭建一個可用的網路環境,裡面包括又兩個部分,第一部分是如何進行統一的資源購買,第二部分是如何快速搭建能夠直接在公網使用的網路環境。

第二部分是應用託管。我們不管去支付寶還是微信,開發平臺裡都會要求配一個域名地址、一個白名單,域名地址都是要求htps的方式,服務一定得有證書,那證書該怎麼管?很多做小程式開發的同學可能更偏向這種,前端的同學可能對整個後端的網路環境,證書管理不是很擅長,我們就幫大家把這些事情都做掉。我們現在已經有的一些能力,比如:證書的管理,執行環境的託管、應用的擴充套件,這些能力當前是已經有的,後續還會擴充套件,比如:大家要去申請域名,做域名的備案,這些事情我們都會在平臺裡一次性幫大家落地。

第三部分是釋出管理。有了應用託管的環境,接下來就是如何釋出。最簡單的方式,大家在本地,在IDE構建產出一個包,直接幫你上傳就OK了,這是雲應用想做到的事情,幫大家來做對應的釋出包的管理,來對應的應用部署。之所以能做這樣事情在於我們提供了標準的應用的執行環境。比如:大家寫一個工程,可能需要的是JDK,有可能也要 tompad,整個執行環境如何搭建,我們幫你做;如果你還有多節點,前面和 SLB 等相應的配置,全部都幫大家弄好了。對大家來講,核心要做的事情是在本地構建產出一個可部署的包,然後通過我們端層的IDE,通過雲上的 Console 入口直接把你的釋出包上傳,上傳以後就可以自動給你做部署和執行,起來以後大家直接訪問就可以了。

第四部分是運維監控。部署完之後是後續的運維能力,當前這個機器的負載是怎麼樣的,CPU水位高不高,記憶體消耗的大不大等這些監控我們都可以通過平臺一站式完成。基本上雲應用幫助大家做完了在後端應用的互動部署運維的完整鏈路。平臺面向的場景比較多,一方面是專門做小程式開發的三方的軟體公司,另一方面體量大一點的是個人開發者,也適合使用我們的平臺,還有創業公司在業務早期也適合通過這種方式來降低整體的成本。

雲開發它的核心是一個 Serverless 套件,套件裡面都用過微信裡面的開發者工具,裡面其實是有云開發的能力的,它的雲開發能力是對應到我們開發套件這裡,我們是面向開發者的套件,裡面會有對應的雲函式、雲資料庫、儲存等能力,這些能力在微信裡大家看到了,比如:有應用管理的入口,這裡的資料是微信端的資料採集上報,對應到阿里雲開發,不僅僅可以把當前的微信使用者數上報,同樣也會支援把支付寶、釘釘、高德、頭條等其他的端側的小程式使用者資料上報,真正實現在同一朵雲裡進行所有的資料管理。

第二部分會提供一系列的運營能力,除了要開發一個小程式,小程式上線以後,還是需要關心當前小程式到底有沒有使用者、使用者訪問的高峰在哪裡、使用者如果有問題怎樣把他的問題反饋給我。比如:創業公司很想做一些活動,做一些圖片設計,這些能力我們如何在當前的平臺裡實現,針對這種場景會提供一系列的運營套件來滿足大家在運營場景的訴求。

後面大家更關心的業務能力。阿里其實有形形色色的不同的能力,支付的能力、出行資料的能力、電商訂單的能力等等系一列能力,我們都會通過業務套件這部分來透出。這裡我列了幾個,比如:音視訊、圖片鑑黃等能力,都是可以通過當前的 Serverless 套件簡單的獲取。有同學會問:在這裡獲取和直接使用有什麼區別?我們希望通過雲開發來給大家提供這些業務能力,原因是雲開發是會給大家在小程式場景下做比較多的適配,通過提供這種端側的JS、SDK來面向主流的小程式的場景,能讓大家做到一次開發,多端的執行。

舉個簡單的例子,在支付寶裡想上傳圖片,用了這個端側的SDK可能就寫比如:阿里雲. Upload檔案就上去了,對應微信小程式也是一樣的邏輯,在前端寫一個阿里雲.upload檔案就上去了。不需要在微信裡面通過一個程式碼邏輯,但是在支付寶又換了一個邏輯,不僅僅是我們不期望的,開發者同學也不期望面向不同的場景需要重複寫一堆適配的程式碼,意義並不大。下面已經列出一些會陸續提供給大家的業務能力,地圖API、支付API,等等一系列的能力,都會通過小程式的體系對外進行透出。

除了提供雲的能力以外,還會給開發者提供一整套的開發者工具鏈。大部分同學可能是偏前端的,大家在做小程式開發的時候都是會在本地,希望在IDE裡能夠一站式的完成所有的事情,我們IDE裡就會包含很多能力,前面幾個產品的時間點也給大家同步下,雲應用第一個版本4月份已經上線了,接下來6月份會有新版本上線。前面提到的雲開發的第一個版本應該在6月下旬就會推出,對應的IDE時間點也給大家同步,差不多會在7月初會有阿里小程式的IDE。

阿里小程式IDE對大家來講有什麼價值呢?

第一個部分是研發工具。可以通過阿里小程式的IDE可以做到一次開發可以生成符合各個平臺執行的小程式。為什麼能做到這一點,在於阿里小程式IDE裡有一個內容叫跨端開發框架,是通過跨端開發框架,比如:寫vue的語言,寫完了一次,想釋出到支付寶怎麼辦?去編譯一個支付寶的安裝包,上傳到支付寶的開發平臺就可以了。同理,想釋出到微信上,同樣的一份雲程式碼,只需要做一次編譯就可以了,成本會低很多。除此之外,工具鏈的能量,有跨端開發框架、有對應的語法的提示等,會提供一整套的模板庫來幫助大家降低開發成本,還提供了外掛擴充套件能力,讓大家做自己想要的能力。

第二個部分是除錯工具。支援斷點、支援效能分析、多端的模擬,還有類似的日誌系統,讓大家能看到整個過程的日誌,幫助大家定位錯誤。

第三部分是雲端一體的能力。把後端雲的能力通過IDE的入口來實現在本地可以一鍵釋出,在本地做統計分析等一系列的事情。

阿里內部的APP絕大部分我們定義成超級APP,超級APP超級在哪裡?它跟普通的APP有什麼不一樣?超級APP裡面其實是有個宿主概念,宿主本身會提供通用的基礎的能力,比如:系統原生的網路能力、業務能力等,這些能力都會通過宿主APP來提供。另外一方面,在宿主APP上面會提供一系列的容器,比如:小程式渲染引擎,在 Native 裡可能會有頁面框架、元件框架等管理的能力。在前端寫H5頁面,會有阿里內部的 WEEX 開發框架等等。為什麼要有這樣的東西,有了這樣的東西后大家就可以很好的擴充套件。假如把容器都開放出去,在業務場景下有自己的APP,你也有了這一整套的容器後,這時候來做小程式,不僅可以放在阿里的APP裡,可以在支付寶上能跑,也能在自己APP裡跑,這是當前超級APP的一個價值點。

通過這個可以感知到,可以通過容器的標準來實現大家業務的真正統一。統一還分幾種場景:一種場景是面向B端的場景,有一個很典型的APP-釘釘,釘釘是很典型的面向企業服務的,自己做了內部審批工作流,公司內部也有日常工作的APP,這時候你的審批工作流既可以在釘釘裡跑,也可以在內部辦公APP裡跑,價值是很明顯的放大的。另一種場景是對於外部的場景投放,也是類似的。比如:星巴克APP,自己做了下單的功能,這個功能不僅僅可以直接在自己的APP裡跑,也能在淘寶、支付寶等其他的APP裡跑。這是一整套的小程式渲染引擎所提供的核心價值。

前面介紹的是大家可以感知出來,提供雲的能力、端側統一的IDE、跨端框架的能力,會提供後續的小程式渲染引擎的能力。基於一些能力的組合可以覆蓋小程式開發過程中絕大部分的場景。

繁星計劃包含哪些能力?

繁星計劃在雲棲社群有一個入口,裡面有小程式能力的展示,截圖就是針對當前繁星計劃後續給大家提供的一些扶持計劃。

第一個部分是雲資源扶持。雲資源的扶持會跟著雲應用的產品功能迭代的節奏來推出的,比如:現在已經推出的後付費的零元購的內容,接下來還會推出預付費的零元購,幫助大家免費使用雲應用的能力;其他場景的資源補貼也會隨著產品計劃逐漸對外推出。

第二部分是流量扶持。比如:端側流量的扶持,流量扶持裡有個概念,叫做超星計劃。會篩選出很典型的有創新意義的小程式,這些小程式在支付寶、、釘釘、高德等不同的場景裡入駐的時候,會幫助去爭取流量的扶持,讓你有更多的機會進行透出,讓更多的使用者感知到你的小程式,除此之外還會有其他一整套的流量計劃。

第三部分說是創業補貼。一個創業公司,剛起步連工位都沒有,想去園區裡找個工位。如果通過繁星計劃就可以獲取到一些資源,你可能真的就不需要工位了,我們提供給你,你的團隊就可以直接過來進行小程式的開發。除此之外,你做的比較好,接下來想找融資的計劃,可能大家對投資融資領域不熟悉,阿里有一整套的團隊、體系來幫助大家降低成本。

第四部分是培訓認證大賽。大賽我們現在已經在籌備,後續通過小程式大賽的方式來篩選出比較典型的有創新意義的小程式,幫助它做一些後續的推廣、相應的扶持。

以上基本上就是整體的繁星計劃所涉及的大方向的點,大家現在感知不到整體的全貌,原因是現在整體的產品運營還沒有上線,整體的繁星計劃的內容還沒有完全明確出來,大概會在7、8月份左右會把整體的繁星計劃後續的規劃點跟大家同步,也方便大家申請相應的資源。

作者:前端小能手

原文連結

本文為雲棲社群原創內容,未經