物聯網平臺集成實踐

做者: 劉必渠小程序

咱們公司是國內第一批專業從事家庭智能化產品研發、生產及銷售的高新科技企業,提供以智能中央控制爲中心,照明控制、門禁控制與電器控制三大入口硬件爲基礎的智能化解決方案,業務範圍涉及智慧小區(智能家居)、智慧園區(智能辦公)、智慧旅行(智能酒店)等多個領域。緩存

最初咱們的技術團隊基本上是硬件開發與生產,與軟件相關的部分都交由外包公司來作,但效果並不理想,結果是要麼外包團隊解散,要麼代碼沒有提交後期維護不到位等等吃了不少虧。而隨着公司業務的擴展以及業務場景多變的性質,組建本身的研發團隊成了必要,同時還要嚴格控制研發團隊的規模與成本。下面來分享一下咱們選擇並使用 LeanCloud 的歷程。微信

開發友好,成本和遷移風險可控

純粹的雲主機服務咱們確定不會選擇,畢竟不想本身開發全部的基礎功能模塊,或是在解決性能問題上有技術投入。以前也考察過新浪和百度等大牌廠商的引擎平臺,但它們提供的服務與功能只是針對應用部署與管理,業務邏輯功能上沒有太多的內容,基本也是須要自行開發部署驗證,另外沒有配套的 CDN 加速及更多的支持,所以不適合長久把平臺的數據放在上面。LeanCloud 偏偏在這些方面都作得不錯。性能

LeanCloud 平臺採用按量付費的方式,這也是我最喜歡的一種。咱們預估在用戶量低於 100 萬的業務場景中使用 LeanCloud 平臺會帶來超高的性價比。另外在數據導出和遷移方面,LeanCloud 相較於其餘的平臺也更加開放一些。由於當後期平臺使用成本增長鬚要考慮變動方案並遷移數據的時候,這個功能的可實施和可操做性對咱們來講就變得很關鍵了。測試

以前我使用過七牛的存儲服務,總體開發與性能都很簡便,價格也不高,前期幾個項目都使用他們的服務,後來瞭解到 LeanCloud 也是使用七牛做爲底層的文件存儲與CDN 加速,有一種英雄所見略同的感受。設計

咱們產品的用戶羣多種多樣,這就要求咱們要用盡量多的形式來提供產品和服務,好比初級用戶但願經過微信或小程序快速接入體驗,中級用戶但願能夠經過手機應用提供更全面、功能更強大的支持,管理人員則要求經過 PC 端接入,方便平常管理與數據錄入。基於以前我開發原生應用的經驗,我不但願所選的 BaaS 平臺會有不少的限制,特別是應用交互體驗這塊內容,由於對於注重原生能力開發的人員來講,限制太多話,碰到問題排查定位的難度相對較高。而 LeanCloud 豐富的 SDK 和 REST API 設計得都很是靈活,對二次開發限制少,用起來非常順手。視頻

多應用共享數據

最開始 LeanCloud 按每一個應用的請求數量進行計費的,因此我基本上按業務的模塊單獨切分不一樣的應用。好比賬號中心、商城、交易中心、設備管理、家居平臺、酒店平臺、社區平臺等都是按獨立的應用來規劃的,這樣子也方便按照不一樣的應用來進行推送與實現權限判斷。初期一共建立了15 個應用,應該之間的數據經過綁定的方式進行用戶賬號的打通,知足設備數據共享等業務需求。教程

2017 年初 LeanCloud 調整了收費模式,因爲免費的開發版可供使用的資源基本上知足不了咱們已上線產品的需求,因此咱們面臨着升級商用版而要增長費用的挑戰。不過目前咱們的業務請求量還不太大,最終咱們把 15 個應用合併到兩個應用中。商用版雖然要付費,但好處是咱們可使用到一些只針對商用版的功能,好比 LiveQuery、文件存儲啓用 https 域名等等。資源

雲緩存減小了 90% 的請求量

每當 LeanCloud 推出新服務咱們都會關注,好比雲緩存 LeanCache,咱們第一時間就用上了,其效果很是明顯,部分應用的請求量降低了 90% 以上。咱們的智能開關在操做時會上報相關面板的狀態,要實時維護面板狀態就要頻繁地讀取數據,因此後來咱們把所有狀態數據都存放在 LeanCache 上面,這樣不只數據讀寫速度有提高,請求量也大大下降,費用也更少了。還有其餘的服務,好比國際短信、推送服務、分析統計等,都是平常應用開發維護必備的組件。開發

小程序遷移一週搞定

2016 年微信上線了小程序,咱們也計劃着把商戶端的內容逐步遷移到小程序上,以實現更快速的版本迭代。2017 年初 LeanCloud 開始支持小程序開發與部署,咱們便藉助其平臺服務遷移現有的業務,步驟熟悉後,基本上一個小程序一週左右時間就能上線。固然因爲小程序自己的限制,有部分推送的業務還沒法實現,咱們最終經過公衆號來配合解決的。

開源工單系統拿來就能用

隨着咱們的技術支持團隊服務的合做夥伴愈來愈多,團隊績效考覈愈來愈規範,咱們須要對團隊成員及其服務數據進行統計和管理。咱們關注到 LeanCloud 本身研發並開源的工單系統 LeanTicket,咱們平時向 LeanCloud 提交問題也是使用這套系統,對於它的運行情況和能力已有了解,另外它能提供的分析報告也基本符合咱們的需求,因此就決定採用。測試部署完成得很快,但因爲 LeanTicket 原本是設計運行於商用版的,還須要通過簡單的修改才能夠運行在開發版上,好在是開源代碼,咱們能夠自行搞定。

文檔完善,視頻教程更給力

每一個開發人員去了解一個平臺的使用主要就是經過官方文檔和示例進行的。LeanCloud 的技術文檔不只內容全面規範,而且還提供了評論功能,讀者能夠在任意一段文字上留言進行反饋或與其餘讀者互動。近期 LeanCloud 還上線了不少的視頻教程,對於想偷懶的人來講是一個很好的消息。

以上爲【玩轉 LeanCloud 】開發者投稿內容。

相關文章
相關標籤/搜索