国产粉嫩无码不卡在线观看,酒店大战丝袜高跟鞋人妻,特级精品毛片免费观看,欧美亚洲日本国产综合在线

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

微信小程序是一個低門檻、流量巨大、公平競爭的優(yōu)質(zhì)營銷平臺,這些特性滿足了商家對于產(chǎn)品營銷的基本渴求,隨著小程序用戶的逐漸積累和沉淀,微信小程序的盈利風(fēng)口已經(jīng)開啟,在 2018年,也將迎來它的最佳紅利期。那么,對于開發(fā)者而言,如何敏捷、低成本的開發(fā)一款火爆小程序?

3月 31日,騰訊云聯(lián)合極客邦科技舉辦的云 社區(qū)技術(shù)沙龍,邀請了騰訊云、Layabox和加推科技的五位技術(shù)專家,從小程序開發(fā)云端解決方案、前端音視頻功能、小程序架構(gòu)設(shè)計和開發(fā)工具等不同維度,一站式分享解析了小程序敏捷開發(fā)最佳實踐,本文整理了精彩干貨內(nèi)容,感興趣的讀者可以點擊閱讀原文下載完整版 PDF。

1 云端:騰訊云微信小程序解決方案

微信小程序自發(fā)布以來,微信平臺上已經(jīng)出現(xiàn)了不少現(xiàn)象級小程序和小游戲,這些火爆小游戲的背后,離不開微信小程序的云端解決方案,為“跳一跳”這類小游戲的云上部署、網(wǎng)絡(luò)架構(gòu)和安全系統(tǒng)提供強(qiáng)有力的技術(shù)支撐。

來自騰訊云的微信小程序解決方案負(fù)責(zé)人黃榮奎,從小程序的核心架構(gòu)、開發(fā)者工具方案和微信小程序的云上實踐等方案,詳細(xì)講解了小程序開發(fā)過程中的常見問題,以及小程序快速開發(fā)和部署實踐,為開發(fā)者提供了一些小程序敏捷開發(fā)的思路方法。

小程序核心架構(gòu)分析

小程序的實現(xiàn)原理

小程序是一種新的開放能力,開發(fā)者可以快速地開發(fā)一個小程序。小程序可以在微信內(nèi)被便捷地獲取和傳播,同時具有出色的使用體驗。那么,小程序是如何實現(xiàn)的呢?

首先來看一下小程序的實現(xiàn)核心架構(gòu),如下圖,第一層是小程序的渲染層,即 Webviews,主要負(fù)責(zé);第二層是邏輯層,主要是通過業(yè)務(wù)邏輯實現(xiàn)登錄功能和支付功能;第三層可以理解為微信原生的能力,微信將很多的豐富的原生客戶端以及網(wǎng)絡(luò)、儲存、登錄、組件和硬件等能力提供到了給了開發(fā)者,存儲包括文件的讀寫、音視頻的讀寫等,組件即開發(fā)常用的組件,包括音視頻的錄制,還有攝象頭,還有拍照、掃碼等等。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

這些原生能力和渲染層以及邏輯層之間,通過事件以及返回數(shù)據(jù)進(jìn)行消息的傳遞及調(diào)用,當(dāng)用戶在界面上進(jìn)行操作時候,會觸發(fā)相關(guān)事件,傳遞到原生 Webviews,再到業(yè)務(wù)邏輯層。微信小程序事件處理部分包含四個板塊:

  • Publish:Service 發(fā)送數(shù)據(jù)給 View(組建內(nèi)部使用)

  • Subscribe:Service 監(jiān)聽 View 事件(點擊事件等)

  • Invoke:Service 和 View 觸發(fā) Native 層(調(diào)用 wx.api)

  • On:Service 和 View 訂閱 Native 層事件(監(jiān)聽系統(tǒng)事件)

開發(fā)者工具方案介紹

在做小程序環(huán)境配置過程中,開發(fā)者需要準(zhǔn)備自己的服務(wù)器,因此需要花費很多精力在服務(wù)器運(yùn)維以及周圍環(huán)境的部署上,而無法專注于小程序的業(yè)務(wù)開發(fā)。為了讓開發(fā)者從繁瑣的配置上解放出來,騰訊云發(fā)布了騰訊云微信小程序 Wafer 解決方案,幫助開發(fā)者更加便捷的部署和調(diào)試服務(wù)器。

因為企業(yè)級和個人開發(fā)者小程序的訴求不同,騰訊云為了滿足多方需求,分別定制了基于企業(yè)級的 IaaS 能力的解決方案 Wafer1和針對個人開發(fā)者的快速、方便、低門檻的解決方案 Wafer2。

Wafer1提供了一臺業(yè)務(wù)服務(wù)器和一臺會話服務(wù)器,業(yè)務(wù)服務(wù)器來部署和處理業(yè)務(wù)相關(guān)的邏輯,而會話服務(wù)器則用來獨立處理與用戶會話(登錄注冊等)相關(guān)的邏輯,業(yè)務(wù)與會話的分離有助于用戶將來對小程序后臺進(jìn)行擴(kuò)展,這樣就解決了服務(wù)器部署的問題。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

使用 Wafer1,用戶需要獨立使用 FTP 等傳輸工具將代碼傳輸?shù)椒?wù)器上,并通過 SSH 命令行的形式部署代碼,這需要用戶有著 Linux 乃至運(yùn)維等知識,門檻較高。Wafer 團(tuán)隊在內(nèi)部分析這個問題之后,拋棄了原先直接將服務(wù)器所有權(quán)交給用戶的方式,由騰訊云統(tǒng)一部署和托管服務(wù)器,基于服務(wù)器封裝多種語言運(yùn)行環(huán)境(目前支持 Node.js 和 PHP),將運(yùn)行環(huán)境的使用權(quán)限交給用戶,通過微信開發(fā)者工具,可以將后端代碼一鍵上傳、部署到環(huán)境中,Node.js 版本還可以遠(yuǎn)程調(diào)試代碼,大大提升了用戶開發(fā)效率,并且降低了開發(fā)和使用的門檻。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

Wafer2 更加注重為個人開發(fā)者提供一種快速、方便、低門檻的解決方案。騰訊云將原來的業(yè)務(wù)服務(wù)器和會話服務(wù)器合并,提供開發(fā)環(huán)境和生產(chǎn)環(huán)境,開發(fā)環(huán)境和生產(chǎn)環(huán)境配置一樣,用于快速開發(fā)測試,生產(chǎn)環(huán)境用于部署提供線上服務(wù)的代碼。除此之外,騰訊云還與微信小程序團(tuán)隊合作,將 Wafer2 集成近微信開發(fā)者工具之中。

小程序云上實踐

除了 IaaS 能力的解決方案 wafer ,騰訊云還提供了快速通信接口、登錄、語音識別等多種能力,用以滿足用戶在小程序開發(fā)過程中的各項功能需求。在這些基礎(chǔ)功能之上,騰訊云開發(fā)了聊天室和圖像識別兩大解決方案。

聊天室主要結(jié)合騰訊云的 Websocket服務(wù),利用信道通信技術(shù),實現(xiàn)小程序與服務(wù)器之間的信息互動和傳輸。如小程序在登錄時會向服務(wù)器獲取地址,騰訊云 PaaS級信道通信技術(shù)可以使當(dāng)前的用戶直接跟當(dāng)時的服務(wù)器直接連接,而不再需要跟業(yè)務(wù)服務(wù)器進(jìn)行連接。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

這樣做的好處是可以讓開發(fā)者在開發(fā)的時候不需要更多的關(guān)注 Websocket的實現(xiàn),避免 WebSocket帶來的性能消耗。

同時騰訊云基于萬象優(yōu)圖技術(shù)提供了圖片識別的 API,可用于包括身份證識別、活體校驗等領(lǐng)域,由于篇幅有限,本文不在此一一詳述,感性趣的同學(xué)可以進(jìn)入騰訊云官網(wǎng)了解詳情。

2 前端:如何在小程序上增加音視頻功能

音視頻能力一直以來都是小程序上的一個短板,2017年 Q4,騰訊視頻云終端團(tuán)隊與微信團(tuán)隊通力合作,將騰訊視頻云的技術(shù)積累以 SDK的形式落地到了微信版本上,從而為小程序增加了直播和實時音視頻能力。騰訊視頻云終端技術(shù)負(fù)責(zé)人常青從原理剖析、技術(shù)演化、WebRTC和快速上手角度詳細(xì)講述了如何在小程序上增加音視頻功能。

原理剖析

下面是微信小程序內(nèi)嵌的音視頻組件,上層為小程序代碼層,中間是小程序的基礎(chǔ)庫,最下層為音視頻組件,其中,這里面的 SDK由兩部分組成的:一個是音視頻上行,音視頻下行。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

上行解決主要解決音視頻的采集、處理、編碼和網(wǎng)絡(luò)幾個問題,其實現(xiàn)過程為首先將本地的畫面和聲音經(jīng)過采集然后進(jìn)行預(yù)處理,如圖片的美顏,音頻的降噪等,然后進(jìn)行編碼,這部分主要試進(jìn)行數(shù)據(jù)壓縮,最后通過網(wǎng)絡(luò)模塊上傳到云端。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

下行與上行對應(yīng),即將原來在云端的音視頻數(shù)據(jù)通過網(wǎng)絡(luò)傳輸、解碼等操作進(jìn)行播放,在音視頻下行的過程中,視頻或聲音播放的速度直接取決于網(wǎng)絡(luò)的時速,為了保證播放效果,需要在解碼之前,對數(shù)據(jù)進(jìn)行緩沖,這樣,即使網(wǎng)絡(luò)環(huán)境較差的情況下,也能在一定程度上保證播放順暢。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

技術(shù)演進(jìn)

微信小程序剛開始嵌入音視頻的能力時,很多技術(shù)點都無法實現(xiàn),騰訊視頻云團(tuán)隊和微信團(tuán)隊通力合作,通過長達(dá)半年的打磨和更新迭代,逐漸為小程序增加了一系列在線音視頻能力。

在線直播:對在線直播而言,最核心的關(guān)鍵點就是解決高并發(fā)的問題,騰訊云首先 UPLOAD上傳數(shù)據(jù),然后再將信號進(jìn)行數(shù)字處理,對聲音進(jìn)行相應(yīng)的清洗整合,最后通過放大器將信號逐級放大,讓每一個地區(qū)的音視頻接收端都能在就近的機(jī)房里面拉到高質(zhì)量的音視頻流,這樣可以解決音視頻卡頓和流暢性問題。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

遠(yuǎn)程調(diào)控:以去年比較火熱的在線抓娃娃機(jī)游戲為例,因為抓娃娃游戲?qū)ρ舆t要求非??量蹋虼嗽诮鉀Q方案上,需要構(gòu)建和實現(xiàn)超低延時的實時音視頻鏈路,這種鏈路能讓操作者在很短的時間內(nèi)看到遠(yuǎn)程設(shè)備的視頻影像,保證娃娃機(jī)的可操控性。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

雙向通話:在小程序上實現(xiàn)了超低延時鏈路之后,騰訊視頻云團(tuán)隊又將回聲抑制、噪聲消除、自動增益、丟包恢復(fù)等一系列高門檻的聲學(xué)技術(shù)整合到小程序音視頻解決方案中。使得雙向音視頻通話既可以在技術(shù)上對開發(fā)者完全透明,又能在效果上匹配現(xiàn)實生活場景中的各種應(yīng)用(比如遠(yuǎn)程定損,遠(yuǎn)程客服,遠(yuǎn)程理療,遠(yuǎn)程開戶等等)。這其中最核心的部分,就是騰訊音視頻實驗室“天籟“聲學(xué)引擎的技術(shù)支持。

多人通話:雙人通話的時候是單對單的傳輸,但是在多人通話狀態(tài)時,信息是多對多的傳輸,這個時候需要一個總控系統(tǒng),去協(xié)調(diào)不同端的狀態(tài),協(xié)調(diào)各個端的輸出,包括什么時間點誰說話,誰不能說話。騰訊視頻云團(tuán)隊,基于小程序自定義組件的設(shè)計標(biāo)準(zhǔn),實現(xiàn)了一套被稱作 RTCRoom的解決方案,用于對視頻房間進(jìn)行狀態(tài)同步和統(tǒng)一管理。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

整個技術(shù)演進(jìn)路線走下來,從簡單的直播到 DNS再到雙向通話再到多人通信,基于小程序的音視頻的場景基本上都可以涵蓋了。

快速上手

騰訊云在這一塊提供了完整的云端解決方案,用戶可以直接根據(jù)自身需要登錄騰訊云后臺,空桶騰訊云服務(wù)就可以直接下載部署,整個操作步驟如下:

  • step1:授權(quán)登錄騰訊云;

  • step2:開通表前使用權(quán)限;

  • step3:開通騰訊云服務(wù);

  • step4:安裝小程序開發(fā)工具;

  • step5:下載并部署 Demo;

3 底層:微信小游戲架構(gòu)設(shè)計

小游戲自發(fā)布以來,微信平臺上已經(jīng)出現(xiàn)了不少現(xiàn)象級游戲,包括《跳一跳》、《保衛(wèi)蘿卜》等。通常,一般人會將小游戲歸屬為小程序的一個子類。但在技術(shù)實現(xiàn)上,微信小游戲和小程序的底層架構(gòu)、實現(xiàn)原理有著天壤之別,源于游戲需要的多用戶深度參與,因此小游戲最大的特點是去中心化分發(fā)以及好友關(guān)系鏈的傳播。

微信小游戲的這兩大特點也對架構(gòu)設(shè)計提出了特別的要求:第一是全區(qū)全服的需求,為了充分利用微信的社交網(wǎng)絡(luò),往往要求游戲是全區(qū)全服的(單機(jī)游戲除外);第二就是在線擴(kuò)縮容的需求,因為任何一款游戲都可能成為爆款,在微信上可能有幾何式的增長,訪問量變化無法預(yù)測,所以在線擴(kuò)縮容成為小游戲架構(gòu)的剛需。

某開發(fā)商的小游戲上線后很短時間內(nèi)在線人數(shù)從幾萬漲到了 200萬左右,因為系統(tǒng)架構(gòu)設(shè)計的時候存在性能瓶頸(緩存使用的是單實例 redis,數(shù)據(jù)庫也是單庫),在擴(kuò)容時遇到了比較大的問題,通過對程序進(jìn)行重構(gòu)和使用集群版的數(shù)據(jù)庫,最終解決了問題,但是由于耽誤了較多時間,造成了損失,在線人數(shù)出現(xiàn)了比較大下滑。所以希望小游戲的架構(gòu)夠輕、夠“小”,但是重點問題還是需要在架構(gòu)設(shè)計時前考慮。

計算層架構(gòu)設(shè)計

無狀態(tài)化的分層架構(gòu)

先來看下圖(左)的無狀態(tài)化分層架構(gòu),架構(gòu)圖如下圖所示,簡單說就是按照服務(wù)調(diào)用關(guān)系對節(jié)點進(jìn)行分層,層和層之間由 LB(負(fù)載均衡)進(jìn)行銜接,LB下的節(jié)點可以靈活的進(jìn)行伸縮,這個架構(gòu)其實就是常用的 web架構(gòu),應(yīng)對一般的休閑類游戲也是夠用的。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

右圖是無狀態(tài)化分層架構(gòu)在騰訊云上的一個最佳實踐,客戶端通過 CLB擴(kuò)展平衡接入到后臺服務(wù),通過 BGP高防對游戲進(jìn)行 DDoS防護(hù),當(dāng)出現(xiàn)攻擊流量的時候,高防服務(wù)可以對流量進(jìn)行清洗然后回注到系統(tǒng)中。騰訊云用不同的彈性伸縮組來承載不同的服務(wù),服務(wù)之間的調(diào)用通過內(nèi)網(wǎng)負(fù)載均衡進(jìn)行銜接以方便實現(xiàn)動態(tài)擴(kuò)縮容。這其中使用了一些騰訊云的服務(wù):

  • 第一個是高性能的負(fù)載均衡 CLB:

    • 單集群提供超過 1.2 億 的最大連接數(shù),用以應(yīng)對億級訪問量;

    • 單集群可處理峰值 40Gb/s 的流量,每秒處理包量(PPS)可達(dá) 600 萬;

    • 對每個租戶的流量進(jìn)行嚴(yán)格隔離,提供主動 DDoS 防護(hù)能力。當(dāng)遭遇 DDoS 攻擊時,騰訊云負(fù)載均衡能免費提供 2~10 Gb DDoS 攻擊峰值流量的防御能力。

  • 第二個為騰訊云彈性伸縮服務(wù) AS,彈性伸縮服務(wù)可以在不同時機(jī)對集群的節(jié)點數(shù)量進(jìn)行伸縮,支持的策略包括定時擴(kuò)縮容策略、基于監(jiān)控告警的策略、手動擴(kuò)縮容策略等。擴(kuò)容速度方面,在騰訊云上創(chuàng)建 1000臺云主機(jī)的平均耗時是 63秒。借助彈性伸縮服務(wù)以及騰訊云的基礎(chǔ)能力,可以很方便地對服務(wù)進(jìn)行快速動態(tài)的擴(kuò)縮容。

  • 第三個是 BGP高防服務(wù),當(dāng)前安全形勢不容樂觀,攻擊流量唾手可得,在必要的時候可以通過 BGP高防服務(wù)對小游戲進(jìn)行保護(hù),它的特點是平臺擁有 T級的防護(hù)帶寬,提供基于 AI的精準(zhǔn)識別算法,以及業(yè)界最全的 BGP網(wǎng)絡(luò),在提供防護(hù)的同時可以最大程度保障網(wǎng)絡(luò)覆蓋質(zhì)量。

無狀態(tài)化分層架構(gòu)的優(yōu)點是可靠性高、單節(jié)點故障不影響整體可用性、可靈活擴(kuò)展和收縮,但是對于游戲來說,存在兩個問題:1)節(jié)點的無狀態(tài)化要求處理每一個請求都要去存儲層讀寫數(shù)據(jù),會導(dǎo)致存儲層壓力較大,硬件成本較高,以及不適用于實時性要求高的場景;2)同層節(jié)點之間不能直接發(fā)送請求、下層節(jié)點也不能向上發(fā)送請求,對于部分游戲場景,需要通過共享數(shù)據(jù)和輪詢來解決,開發(fā)者來說并不方便,也會有實時性問題和性能損耗。

星型架構(gòu)

為了解決上述問題,小游戲團(tuán)隊采用了星型架構(gòu),如下圖:

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

不同節(jié)點之間通過 router進(jìn)行通信,router是實現(xiàn)節(jié)點間消息轉(zhuǎn)發(fā)的服務(wù)器。比如說 A節(jié)點中的 Player1對象要向發(fā)送 B節(jié)點中的 Player2對象發(fā)送組隊邀請,可以將消息發(fā)送到 router,router再轉(zhuǎn)發(fā)到 B節(jié)點處理之后再發(fā)送到 Player2的客戶端。在這個結(jié)構(gòu)中,所有的節(jié)點都是對等的關(guān)系,任何兩個節(jié)點通過 router都可以實現(xiàn)消息互通。但是這個圖有一個明顯的題:router是一個單點,有容錯性問題和可擴(kuò)展性問題。對于容錯性問題,可以通過引入主備機(jī)制來解決,借助 zookeeper可以實現(xiàn)主備的自動切換,當(dāng)主節(jié)點不可用時,自動切換到備節(jié)點。

此外,可以通過 router將多個星型結(jié)構(gòu)連接在一起,解決可擴(kuò)展性問題,如下圖:

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

player1 在 set 1的節(jié)點 A上,player2 在 set 2的節(jié)點 B上,player 1向 player 2 發(fā)送組隊邀請時,消息可以通過 router1 轉(zhuǎn)發(fā)到 router2,最后到達(dá) B節(jié)點,在 B節(jié)點中進(jìn)行必要的判斷處理,最后通知到 player2的客戶端,這就要求 router保存所有對象的路由數(shù)據(jù),類似下面這個表:

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

這里,router做了以下事情:

  • 一是收斂連接,簡化了內(nèi)部通信的管理;

  • 二是建立了通用的對象路由機(jī)制,簡化了游戲的開發(fā),游戲開發(fā)人員不用關(guān)心服務(wù)和進(jìn)程,只用關(guān)心對象就可以了。

  • 三是可以通過 router進(jìn)行負(fù)載均衡和廣播。

router具有通用性,可以作為通用的游戲中間件。

基于這個架構(gòu),系統(tǒng)的擴(kuò)展可以在兩個層面進(jìn)行,一個是 set內(nèi)的擴(kuò)展,當(dāng)大廳或者對戰(zhàn)節(jié)點不夠了時,可以動態(tài)添加,新節(jié)點會去 router上注冊自己,加入到系統(tǒng)中,當(dāng)一個 set的承載能力達(dá)到上限時,可以繼續(xù)通過復(fù)制 set進(jìn)行擴(kuò)展,假設(shè)已經(jīng)有了 set0和 set1,當(dāng)需要添加 set2時,整個過是先部署 set2,當(dāng) router2起來時,router0和 router1會通過 zookeeper發(fā)現(xiàn)它,并建立到它的連接,連接建立后,router2會向 router1或 router0獲取全量對象路由信息,并且將自己上面初始化后產(chǎn)生的對象路由信息發(fā)送給 router0和 router1。

到這里整個系統(tǒng)的通信拓?fù)渚鸵呀?jīng)建立完成了,set2可以對外開放,player2登錄到 set2的大廳節(jié)點后,會向 router2發(fā)送自己的對象路由信息,router2會把這個信息同步給 router0和 router1。簡單說,是通過復(fù)制節(jié)點和復(fù)制 set進(jìn)行擴(kuò)展,反之可以進(jìn)行收縮。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

下圖就是擴(kuò)展星型結(jié)構(gòu)在騰訊云上的一個實踐,對于實時性要求高的游戲,比如坦克大戰(zhàn)這樣的游戲,可以多點部署,讓玩家就近接入,華南的玩家接入到廣州的 VPC,華東的玩家接入到上海的 VPC,兩個 VPC內(nèi)部分別部署了 set1和 set2,并且通過跨域?qū)Φ冗B接打通,使得router1和 router2能夠建立內(nèi)網(wǎng)連接,實現(xiàn)全區(qū)全服。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

存儲層設(shè)計

小程序設(shè)計的目標(biāo)是建立一個大存儲層以滿足全區(qū)全服和動態(tài)擴(kuò)容的問題。其中最重要的問題是數(shù)據(jù)庫水平擴(kuò)展的問題,自己做可以有三種方法實現(xiàn):第一種基于增量區(qū)間的分片,它的優(yōu)點是可以實現(xiàn)動態(tài)在線擴(kuò)容,但是存在性能熱點的問題,因為新分片永遠(yuǎn)是訪問量最大的分片,而老分片會隨著玩家流失出現(xiàn)性能閑置的情況;第二種方法是根據(jù) ID的散列值將數(shù)據(jù)均勻分散到不同的分片,沒有性能熱點的問題,但是在對系統(tǒng)進(jìn)行擴(kuò)容時候,往往需要對數(shù)據(jù)進(jìn)行搬遷,比較難以實現(xiàn)快速自動擴(kuò)容;第三種方法就是將兩者結(jié)合,可以同時解決兩個問題,但是需要增加中間數(shù)據(jù)路由層,有研發(fā)負(fù)擔(dān)和性能損耗。

為了簡化存儲層的設(shè)計,現(xiàn)在比較廣泛使用的是騰訊云的分布式數(shù)據(jù)庫產(chǎn)品 DCDB,它的原理是通過增加中間代理層,將一個邏輯表映射到到多個物理表,將分片的復(fù)雜性完全封裝在代理層。對業(yè)務(wù)層可以做到近乎透明。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

DCDB支持新增分片擴(kuò)容和現(xiàn)有分片擴(kuò)容,擴(kuò)容時系統(tǒng)會自動對數(shù)據(jù)進(jìn)行搬遷并且切換相應(yīng)的流量,對在線業(yè)務(wù)可以做到無感知,開發(fā)者只需要在控制臺進(jìn)行簡單的操作就可以實現(xiàn)自動擴(kuò)容。

另一個能簡化存儲層設(shè)計的產(chǎn)品是騰訊的 TCaplus,TCaplus是騰訊自研的,專為游戲設(shè)計的 NoSQL分布式數(shù)據(jù)庫,它的特點主要有三個:

  • 一是支持 Protobuf接口訪問,接口友好,非常適合游戲開發(fā);

  • 二是將 Cache與硬盤結(jié)合,冷熱數(shù)據(jù)自動換入換出,開發(fā)人員不用同時面對緩存數(shù)據(jù)庫和持久化數(shù)據(jù)庫;

  • 三是存儲空間無上限,單表最大支持 50TB,支持不停服擴(kuò)容,能很好地支持全區(qū)全服。

目前 TCaplus在騰訊內(nèi)部得到了廣泛使用,包括王者榮耀、火影忍者、CF以及絕地求生手游等數(shù)百款游戲,都以 TCaplus作為主數(shù)據(jù)庫。

4 工具:LayaAir引擎一鍵發(fā)布微信小游戲

LayaAir引擎是 Layabox推出的 HTML5開源引擎,不僅支持 AS3、TS、JS三種語言開發(fā) HTML5游戲,還可以同時發(fā)布為 Native APP游戲和微信小游戲,以及 QQ玩一玩游戲。開發(fā)者可直接在 LayaAirIDE工具內(nèi)快捷的開發(fā)產(chǎn)品和提交產(chǎn)品。Layabox 合伙人李明詳細(xì)分享了如何利用 LayaAir引擎與 LayaAirIDE工具一鍵發(fā)布微信小游戲。

小游戲創(chuàng)建前的準(zhǔn)備工作

發(fā)布微信小游戲之前需要做一些準(zhǔn)備工作,包括環(huán)境配置、工具下載、創(chuàng)建賬號等。

第一:環(huán)境配置,即下載并安裝引擎的開發(fā)環(huán)境。LayaAir引擎的開發(fā)工具 LayaAirIDE、發(fā)布小游戲的功能適配都在這個環(huán)境里面實現(xiàn);

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

第二:下載并安裝微信開發(fā)者工具;

第三:創(chuàng)建一個小程序的企業(yè)開發(fā)者帳號,獲得開發(fā)者 ID(AppID)。這里,值得注意的是,個人開發(fā)者不需要版號,但是也不能開內(nèi)購支付;對于企業(yè)開發(fā)者,如果版號沒辦完,也可以提供版號申辦回執(zhí)。

H5引擎開發(fā)微信小游戲的流程

H5引擎開發(fā)微信小游戲主要包括創(chuàng)建、開發(fā)、發(fā)布、真機(jī)調(diào)試與上線發(fā)布等步驟,首先需要在 IDE里面創(chuàng)建小游戲示例項目,然后用 IDE內(nèi)進(jìn)行小游戲的開發(fā),開發(fā)完成后在 IDE內(nèi)可直接發(fā)布小游戲項目。小游戲項目發(fā)布后,還需要在微信的開發(fā)者工具內(nèi)導(dǎo)入 IDE發(fā)布的小游戲項目,然后通過在微信開發(fā)者工具內(nèi)的預(yù)覽和上傳功能,進(jìn)行真機(jī)調(diào)試和上線發(fā)布。

在 IDE里面創(chuàng)建小游戲項目。這個比較簡單,打開新建項目按鈕即可看到創(chuàng)建界面,需要注意的是創(chuàng)建時一定要選擇微信小游戲 2D示例或微信小游戲 3D示例,否則不會創(chuàng)建微信開發(fā)者工具的工程文件,以及不會導(dǎo)入小游戲適配庫。

IDE內(nèi)進(jìn)行小游戲開發(fā)。在小游戲開發(fā)過程中有一個很重要的關(guān)注點,是 4M本地包,這個本地包主要用于存放 JS文件與最基礎(chǔ)的預(yù)加載資源(整 個項目的 JS必須放在本地包),本地包超過 4M后,可遠(yuǎn)程動態(tài)加載資源,通過 LayaAir引擎適配庫的本地包白名單功能,可以方便的管理本地資源與遠(yuǎn)程資源的加載。另外,在小游戲的緩存管理這一塊,LayaAir引擎適配庫提供自動緩存管理與手動緩存管理,常用資源小于 50M的小游戲建議采用自動緩存管理,常用資源大于 50M的需要手動管理緩存。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

IDE內(nèi)發(fā)布小游戲項目。項目開發(fā)完成后,可點擊發(fā)布按鈕,將 H5項目直接一鍵發(fā)布為小游戲項目,因為微信小游戲、QQ小游戲都提供了標(biāo)準(zhǔn)的渲染接口,LayaAir引擎通過建立適配庫,對不同平臺的接口與引擎 API進(jìn)行對接,保障開發(fā)者一次開發(fā)就可以同時發(fā)布多平臺。

微信開發(fā)工具中導(dǎo)入項目。打開微信開發(fā)者工具,創(chuàng)建一個小游戲項目,創(chuàng)建時的目錄直接指向發(fā)布后的小游戲項目即可。

微信小游戲的調(diào)試。微信小游戲的調(diào)試包括常規(guī)開發(fā)調(diào)試和真機(jī)調(diào)試兩個部分,常規(guī)開發(fā)調(diào)試只需開發(fā)時在 IDE或 chrome下調(diào)試即可(小游戲工具內(nèi)也是基于 chrome),真機(jī)調(diào)試要求本地包必須小于 4M,微信的真機(jī)調(diào)試環(huán)境較為簡單,調(diào)試主要靠 log輸出。

小游戲上線發(fā)布。微信小游戲調(diào)試結(jié)束后,如果打算上線,直接在微信開發(fā)者工具內(nèi)點擊上傳,即可將小游戲版本提交到微信開發(fā)者平臺中,在平臺中提交相關(guān)資料,審核通過后,可上線。

以上,就是用 LayaAir引擎一鍵發(fā)布小游戲的完整流程。據(jù)悉,Layabox還將與騰訊云聯(lián)手優(yōu)化小游戲發(fā)布與開發(fā)流程,未來 LayaAirIDE中將集成一鍵上傳微信小游戲的動態(tài)加載包到騰訊云,避免人工拆分目錄 、打開服務(wù)器傳輸工具等繁瑣流程,同時,用戶還可以將 LayaAirIDE中的帳號與騰訊云關(guān)聯(lián)綁定,通過 IDE快速購買騰訊云的服務(wù)器。

5 實踐:如何利用小程序技術(shù)解決企業(yè)銷售難題

小程序時代,不僅需要懂開發(fā),還要你善運(yùn)營,一個擁有多功能和高性能的小程序,需要配合完備的運(yùn)營手段,才能發(fā)揮最大的價值。加推科技聯(lián)合創(chuàng)始人劉翌,分享典型企業(yè)營銷場景痛點解析,以及加推如何結(jié)合小程序解決企業(yè)銷售難題。

企業(yè)營銷痛點解析

在講解企業(yè)營銷痛點之前,劉翌分析了企業(yè)營銷的三大剛需,即收入、銷售和銷售管理,這里面,后兩點直接影響了企業(yè)收入,那么,企業(yè)如何做銷售和銷售管理呢?下圖是是一個中國 8000萬名銷售員的痛點的總結(jié),可以大部分企業(yè)都會面臨以下四大類的痛點:

  • 首先獲客難度大,獲客成本非常高。舉個例子,大家經(jīng)常會碰到房產(chǎn)中介,每一天可能要打 300個電話,每個通話假設(shè)只有 30秒,核算下來也有 150分鐘,但一般電話銷售的最終轉(zhuǎn)化都非常低;

  • 另外觸達(dá)率很低:假設(shè)在人員密集的展會上,一個銷售遞出去 500張名片,這其中,可能有 480張名片將會被拋棄,獲客觸達(dá)難,所以成交率就低;

  • 銷售流動性高:在所有職業(yè)里面,銷售的流動性絕對是排前的,而一旦銷售離職,很多該銷售手上的客戶就會被帶走,最終造成客戶流失;

  • 成交率低:不管是電話營銷、現(xiàn)場交流還是名片傳遞,這些方式的成交率都非常低,可能 2000個電話里面才會觸達(dá) 1個客戶,10場展會只有 1個實現(xiàn)轉(zhuǎn)化。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

加推微信智能營銷解決方案

不管是微信公眾號、微商城、企業(yè)官網(wǎng)還是小程序,在企業(yè)初期階段,沒有推流和運(yùn)營的情況下,獲客率一般都不高;即便獲的銷售線索,由于缺乏可視化、智能化篩選工具,營銷人員只能一對一聯(lián)系跟蹤,無法系統(tǒng)管理客戶,工作效率較低。

那么,有沒有一種通用的方法和工具,能夠打通企業(yè)、微信、小程序等不同渠道,將推廣、運(yùn)營、銷售轉(zhuǎn)化形成有效的閉環(huán)?基于這種思路,加推結(jié)合微信小程序,從 SaaS小程序接入,開發(fā)了全球首款 B2S2C微信智能銷售系統(tǒng)。通過 AI名片、AI雷達(dá)等解決方案實現(xiàn)微信小程序 10億用戶的觸達(dá)與轉(zhuǎn)化。

云上、前端、架構(gòu)、工具……這份小程序開發(fā)指南請查收(小程序云開發(fā)教程視頻)

  • AI名片:智能生成個人小程序名片,用戶只需掃一掃銷售小程序碼,即可添加名片,添加成功的用戶可以隨時查看銷售個人信息,包括個人聯(lián)系方式、公司職位、功能產(chǎn)品等,信息可根據(jù)需要自主設(shè)置;

  • AI銷售雷達(dá):在小程序添加朋友之后,AI銷售雷達(dá)通過智能“客戶捕手”和客戶管理等功能,實時追蹤客戶行為軌跡,隨時隨地掌控客戶真實需求,及時跟進(jìn),同時客戶管理功能通過客戶畫像分析,標(biāo)簽化分類用戶,篩選精準(zhǔn)用戶;

  • BOSS雷達(dá):BOSS雷達(dá)通過可視化員工分析系統(tǒng),將員工拜訪執(zhí)行過程同步到 BOSS系統(tǒng),沉淀準(zhǔn)客戶資源,同時,員工客戶數(shù)據(jù)自動保存云端,即使離職,所有數(shù)據(jù)都能保證全程可追溯。

總的來說,B2S2C微信智能銷售系統(tǒng)主要先深度打通微信原生消息通道,打通微信數(shù)據(jù)層,實時抓取客戶行為軌跡并生成用戶畫像,然后通過小程序技術(shù)重構(gòu)個人名片,搭建企業(yè)版微信朋友圈,利用 AI核心算法分析用戶行為數(shù)據(jù),尋找商業(yè)合作突破口,重構(gòu)客戶通訊錄,將微信流量導(dǎo)入企業(yè)官網(wǎng)或企業(yè)系統(tǒng),BOSS平臺可實時掌控員工客戶數(shù)據(jù),實現(xiàn)流量永久資源化。

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。