微信公眾平台的設計與開發之道

2021-09-17 06:39:58 字數 1743 閱讀 2188

編者按

\\正文

\\多平台賬號體系\\t

訊息觸達機制和策略\\t

h5和native的完美融合\

\\ \\ 我們在設計的時候,考慮到傳統企業以前在整個發展歷程中,一開始有自己的一些辦公室或者一些門店,他觸達終端使用者的一些渠道無非是通過傳統的海報或者傳單,成本是比較高昂的,任何乙個開發者想去涉獵都非常難。後來隨著網際網路的發展,開始有了乙個全新的東西,任何乙個人或者企業可以去建立自己的**,將自己企業的一些業務搬到**上面。

\\多平台賬號體系

\\ \\

\\ \\ 接下來就簡單講一下我們怎麼去支撐這樣乙個東西,乙個是高效能的保障。這裡簡單把我們整個多平台賬號體系分為幾塊,乙個是api層,另外乙個是router和monitor,還有db cluster,我們通過這幾個東西怎麼樣去解決呢?所有的db其實儲存了剛剛前面提到的所有的關係,所有的關係落地到db,但是我們提供給到開發者的所有的訪問,都建立了很多cache,我們的cache有多份的記憶體映象,通過非同步廣播的乙個方式去同步各個節點。cache中的任何一台機器當掉,都會自動的有伺服器重啟它,重啟的時候它會自動去熱載入這些資料到記憶體裡面,然後多份的記憶體資料保證說,大量的類似檢查都全部是落在記憶體上面,而已經當掉的一些機器會自動去載入一些資料到達記憶體裡面,在它沒有載入完成之前不會提供服務,所以我們保證能夠提供一種很高的併發的查詢,同時又能夠保持乙個短時間的響應時間。

\\ router和monitor解決的是什麼呢?這裡我們認為很重要的一點是,解決乙個橫向擴充套件性,因為每一分鐘都有很多人在上面去註冊一些應用,你無法想象說哪一天,可能是一年前的乙個應用突然間火起來了,或者說有乙個公眾賬號突然間就火起來,我們無法預知,所以我們認為快速橫向擴充套件能力是我們平台賴以生存的乙個很重要的法寶。

\\ \\訊息的觸達機制和策略

\\ \\

\\ 所以我們在設計這個訊息觸達裡面的時候,設計了多種多樣的一些機制,其中有乙個是包括**,可能很多人已經在用了,在這裡面我們可以針對使用者的各種屬性,location,包括一些分組,去做篩選,去做定向的一些推送,開發者因為我們的**api,其實他可以做到更細力度的乙個推送,我們原則上,乙個月乙個使用者只要不重複收到四條以上都是ok的,所以換句話說開發者可以做非常非常細力度的,通過程式化對使用者進行編組,根據不同的使用者畫像去做推送,我們個人認為說這種一條內容對所有全員的推送是非常低效的,未來我們也會在這乙個**上的支援,去支援更多的特性、屬性的一些推送。 我們還想說的是,除了**推送以外,還有一些渠道是更實時,更具有互動性的。

\\ \\ 我們的解決方案是,通過多級的優先佇列,不同級別的優先佇列,跟資源排程有乙個分布式的漏水桶服務,去排程一些資源。 簡單來說是這樣的,我們會把所有的資源給全域性的公眾賬號,保證乙個最少的可使用資源,這個可使用資源肯定是絕對可以保證的,然後超過這些閾值的時候,我們會在全域性有乙個應用,應用系統資源去排程,這個時候會看我們哪乙個集群、哪乙個佇列裡面是比較空閒的,就會把你給排程到那邊去,從而保證我們全域性的資源是最高使用的。

\\h5和native的完美融合

\\ \\

\\ 首先即使在不穩定的情況下,傳輸乙個只有十幾個位元組的serverid是非常簡單的乙個事情,另外他在這裡的server到我們的open api之間的網路環境是相對比較穩定的,它要去處理這個的重新拉回來,自己再存起來,相對來說是比較簡單的乙個事情,它不需要處理,它不需要去面對edge、wifi跟訊號不好的3g這樣的一種網路情況。

\\\\

\\

微信公眾平台的設計與開發之道

編者按 正文 多平台賬號體系 t 訊息觸達機制和策略 t h5和native的完美融合 我們在設計的時候,考慮到傳統企業以前在整個發展歷程中,一開始有自己的一些辦公室或者一些門店,他觸達終端使用者的一些渠道無非是通過傳統的海報或者傳單,成本是比較高昂的,任何乙個開發者想去涉獵都非常難。後來隨著網際網...

微信公眾平台開發(一) 接入微信公眾平台

一 接入流程分析參考官方文件 參考文件接入概述分別由以下幾部分完成 1 填寫伺服器配置 2 驗證伺服器位址的有效性 3 依據介面文件實現業務邏輯 按照流程第一部是先填寫伺服器配置,但是我們通常都是先做第二步 編寫 驗證伺服器位址的有效性 controller的寫法 restcontroller pu...

微信公眾平台開發概述

請開發者注意 4 每個介面都有每日介面呼叫頻次限制,可以在公眾平台官網 開發者中心處檢視具體頻次。5 在開發出現問題時,可以通過介面呼叫的返回碼,以及報警排查指引 在公眾平台官網 開發者中心處可以設定介面報警 來發現和解決問題。6 公眾平台以access token為介面呼叫憑據,來呼叫介面,所有介...