亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

  • 消息推送的方法、裝置及系統(tǒng)的制作方法_4

    文檔序號:9791777閱讀:來源:國知局
    [0153]主服務(wù)器接收推送平臺發(fā)送的通知消息,所述主服務(wù)器為分布式服務(wù)器集群中通過投票選舉出的服務(wù)器;
    [0154]將所述通知消息寫入到log日志中;
    [0155]將所述log日志分發(fā)給集群中的從服務(wù)器,以使得所述從服務(wù)器更新自身的log日志并將所述通知消息下發(fā)給建立有連接關(guān)系的終端,所述從服務(wù)器為集群中除所述主服務(wù)器之外的其他服務(wù)器。
    [0156]A2、根據(jù)Al所述的方法,其特征在于,在所述接收推送平臺發(fā)送的通知消息之前,所述方法進一步包括:
    [0157]在一個投票周期內(nèi)為自身進行投票;并且,
    [0158]向集群中的其他服務(wù)器發(fā)送投票請求,以獲得所述其他服務(wù)器的投票;
    [0159]當(dāng)在所述投票周期內(nèi)最先獲得最多票數(shù)時,確定成為所述主服務(wù)器。
    [0160]A3、根據(jù)A2所述的方法,其特征在于,每個投票周期對應(yīng)一個周期數(shù),所述周期數(shù)唯一并且隨時間推移單調(diào)遞增,每個服務(wù)器單獨維護自身的周期數(shù);
    [0161 ]在確定成為所述主服務(wù)器之后,所述方法進一步包括:
    [0162]與所述從服務(wù)器交換周期數(shù);
    [0163]若所述從服務(wù)器的周期數(shù)小于所述主服務(wù)器的周期數(shù),則使所述從服務(wù)器根據(jù)所述主服務(wù)器的周期數(shù)進行周期數(shù)更新;
    [0164]若所述從服務(wù)器的周期數(shù)大于所述主服務(wù)器的周期數(shù),則放棄主服務(wù)器地位。
    [0165]A4、根據(jù)A2所述的方法,其特征在于,在確定成為所述主服務(wù)器之后,所述方法進一步包括:
    [0166]定期向所述從服務(wù)器發(fā)送心跳包,以便向所述從服務(wù)器通知自身的主服務(wù)器地位。
    [0167]A5、根據(jù)Al所述的方法,其特征在于,所述將所述通知消息寫入到log日志中,包括:
    [0168]在所述log日志中生成log操作記錄;
    [0169]將所述通知消息作為變量寫入到所述log操作記錄中。
    [0170]A6、根據(jù)Al所述的方法,其特征在于,在所述將所述log日志分發(fā)給集群中的從服務(wù)器之后,所述方法進一步包括:
    [0171 ]統(tǒng)計各個從服務(wù)器的更新狀態(tài);
    [0172]當(dāng)成功更新log日志的從服務(wù)器數(shù)量超過預(yù)設(shè)數(shù)量時,指示成功更新log日志的從服務(wù)器向連接的終端下發(fā)所述通知消息。
    [0173]A7、根據(jù)A6所述的方法,其特征在于,所述預(yù)設(shè)數(shù)量為集群服務(wù)器總數(shù)的二分之
    O
    [0174]AS、根據(jù)A6或7所述的方法,其特征在于,在所述統(tǒng)計各個從服務(wù)器的更新狀態(tài)之后,所述方法進一步包括:
    [0175]向更新失敗的從服務(wù)器重復(fù)分發(fā)所述log日志。
    [0176]B9、一種消息推送的方法,所述方法應(yīng)用于從服務(wù)器側(cè),其特征在于,所述方法包括:
    [0177]從服務(wù)器接收主服務(wù)器分發(fā)的log日志,所述主服務(wù)器為分布式服務(wù)器集群中通過投票選舉出的服務(wù)器,所述從服務(wù)器為集群中除所述主服務(wù)器之外的其他服務(wù)器,所述log日志中記錄有推送平臺向所述主服務(wù)器發(fā)送的通知消息;
    [0178]根據(jù)所述log日志更新自身的log日志;
    [0179]將所述log日志中的所述通知消息下發(fā)給建立有連接關(guān)系的終端。
    [0180]B10、根據(jù)B9所述的方法,其特征在于,在所述接收主服務(wù)器分發(fā)的log日志之前,所述方法進一步包括:
    [0181 ]在一個投票周期內(nèi)接收其他服務(wù)器發(fā)送的投票請求;
    [0182]為最先接收到的投票請求對應(yīng)的服務(wù)器投票。
    [0183]B11、根據(jù)BlO所述的方法,其特征在于,每個投票周期對應(yīng)一個周期數(shù),所述周期數(shù)唯一并且隨時間推移單調(diào)遞增,每個服務(wù)器單獨維護自身的周期數(shù);
    [0184]在投票選舉出所述主服務(wù)器之后,所述方法進一步包括:
    [0185]與包括所述主服務(wù)器在內(nèi)的其他服務(wù)器交換周期數(shù);
    [0186]若所述主服務(wù)器的周期數(shù)大于自身的周期數(shù),則根據(jù)所述主服務(wù)器的周期數(shù)進行周期數(shù)更新;
    [0187]若所述主服務(wù)器的周期數(shù)小于自身的周期數(shù),則否定所述主服務(wù)器的主服務(wù)器地位。
    [0188]B12、根據(jù)BlO所述的方法,其特征在于,在投票選舉出所述主服務(wù)器之后,所述方法進一步包括:
    [0189]定期接收所述主服務(wù)器發(fā)送的心跳包,以便確定所述主服務(wù)器的主服務(wù)器地位。
    [0190]B13、根據(jù)B12所述的方法,其特征在于,若在預(yù)設(shè)時長內(nèi)未接收到所述主服務(wù)器發(fā)送的心跳包,則否定所述主服務(wù)器的主服務(wù)器地位。
    [0191]B14、根據(jù)B9所述的方法,其特征在于,所述方法進一步包括:
    [0192]向所述主服務(wù)器上報所述log日志的更新狀態(tài);
    [0193]所述將所述log日志中的所述通知消息下發(fā)給建立有連接關(guān)系的終端,包括:
    [0194]若更新成功,則根據(jù)所述主服務(wù)器的指示,將所述log日志中的所述通知消息下發(fā)給建立有連接關(guān)系的終端。
    [0195]B15、根據(jù)B14所述的方法,其特征在于,所述方法進一步包括:
    [0196]若更新失敗,則接收所述主服務(wù)器重復(fù)分發(fā)的所述log日志;
    [0197]根據(jù)重復(fù)接收的所述log日志再次更新自身的log日志。
    [0198]C16、一種消息推送的裝置,所述裝置位于主服務(wù)器側(cè),其特征在于,所述裝置包括:
    [0199]接收單元,用于接收推送平臺發(fā)送的通知消息,所述主服務(wù)器為分布式服務(wù)器集群中通過投票選舉出的服務(wù)器;
    [0200]寫入單元,用于將所述通知消息寫入到log日志中;
    [0201 ]發(fā)送單元,用于將所述log日志分發(fā)給集群中的從服務(wù)器,以使得所述從服務(wù)器更新自身的log日志并將所述通知消息下發(fā)給建立有連接關(guān)系的終端,所述從服務(wù)器為集群中除所述主服務(wù)器之外的其他服務(wù)器。
    [0202]C17、根據(jù)C16所述的裝置,其特征在于,所述裝置進一步包括處理單元,用于:
    [0203]在所述接收推送平臺發(fā)送的通知消息之前,在一個投票周期內(nèi)為自身進行投票;并且,
    [0204]向集群中的其他服務(wù)器發(fā)送投票請求,以獲得所述其他服務(wù)器的投票;
    [0205]當(dāng)在所述投票周期內(nèi)最先獲得最多票數(shù)時,確定成為所述主服務(wù)器。
    [0206]C18、根據(jù)C17所述的裝置,其特征在于,所述裝置進一步包括:
    [0207]交換單元,用于在確定成為所述主服務(wù)器之后,與所述從服務(wù)器交換周期數(shù),每個投票周期對應(yīng)一個周期數(shù),所述周期數(shù)唯一并且隨時間推移單調(diào)遞增,每個服務(wù)器單獨維護自身的周期數(shù);
    [0208]更新單元,用于當(dāng)所述從服務(wù)器的周期數(shù)小于所述主服務(wù)器的周期數(shù)時,使所述從服務(wù)器根據(jù)所述主服務(wù)器的周期數(shù)進行周期數(shù)更新;
    [0209]所述處理單元,用于當(dāng)所述從服務(wù)器的周期數(shù)大于所述主服務(wù)器的周期數(shù)時,放棄主服務(wù)器地位。
    [0210]C19、根據(jù)C17所述的裝置,其特征在于,所述發(fā)送單元,用于在確定成為所述主服務(wù)器之后,定期向所述從服務(wù)器發(fā)送心跳包,以便向所述從服務(wù)器通知自身的主服務(wù)器地位。
    [0211 ] C20、根據(jù)C16所述的裝置,其特征在于,所述寫入單元,包括:
    [0212]生成模塊,用于在所述log日志中生成log操作記錄;
    [0213]寫入模塊,用于將所述通知消息作為變量寫入到所述log操作記錄中。
    [0214]C21、根據(jù)C16所述的裝置,其特征在于,所述裝置進一步包括統(tǒng)計單元,用于在將所述log日志分發(fā)給集群中的從服務(wù)器之后,統(tǒng)計各個從服務(wù)器的更新狀態(tài);
    [0215]指示單元,用于當(dāng)成功更新log日志的從服務(wù)器數(shù)量超過預(yù)設(shè)數(shù)量時,指示成功更新log日志的從服務(wù)器向連接的終端下發(fā)所述通知消息。
    [0216]C22、根據(jù)C21所述的裝置,其特征在于,所述指示單元使用的所述預(yù)設(shè)數(shù)量為集群服務(wù)器總數(shù)的二分之一。
    [0217]C23、根據(jù)C21或22所述的裝置,其特征在于,所述發(fā)送單元,用于在統(tǒng)計各個從服務(wù)器的更新狀態(tài)之后,向更新失敗的從服務(wù)器重復(fù)分發(fā)所述log日志。
    [0218]D24、一種消息推送的裝置,所述裝置位于從服務(wù)器側(cè),其特征在于,所述裝置包括:
    [0219]接收單元,用于接收主服務(wù)器分發(fā)的log日志,所述主服務(wù)器為分布式服務(wù)器集群中通過投票選舉出的服務(wù)器,所述從服務(wù)器為集群中除所述主服務(wù)器之外的其他服務(wù)器,所述log日志中記錄有推送平臺向所述主服務(wù)器發(fā)送的通知消息;
    [0220]更新單元,用于根據(jù)所述log日志更新自身的log日志;
    [0221]發(fā)送單元,用于將所述log日志中的所述通知消息下發(fā)給建立有連接關(guān)系的終端。
    [0222]D25、根據(jù)D24所述的裝置,其特征在于,所述裝置進一步包括:處理單元,用于:
    [0223]在接收主服務(wù)器分發(fā)的log日志之前,在一個投票周期內(nèi)接收其他服務(wù)器發(fā)送的投票請求;
    [0224]為最先接收到的投票請求對應(yīng)的服務(wù)器投票。
    [0225]D26、根據(jù)D25所述的裝置,其特征在于,所述裝置進一步包括:
    [0226]交換單元,用于在投票選舉出所述主服務(wù)器之后,與包括所述主服務(wù)器在內(nèi)的其他服務(wù)器交換周期數(shù),每個投票周期對應(yīng)一個周期數(shù),所述周期數(shù)唯一并且隨時間推移單調(diào)遞增,每個服務(wù)器單獨維護自身的周期數(shù);
    [0227]所述更新單元,用于當(dāng)所述主服務(wù)器的周期數(shù)大于自身的周期數(shù)時,根據(jù)所述主服務(wù)器的周期數(shù)進行周期數(shù)更新;
    [0228]所述處理單元,用于當(dāng)所述主服務(wù)器的周期數(shù)小于自身的周期數(shù)時,否定所述主服務(wù)器的主服務(wù)器地位。
    [0229]D27、根據(jù)D25所述的裝置,其特征在于,所述接收單元,用于在投票選舉出所述主服務(wù)器之后,定期接收所述主服務(wù)器發(fā)送的心跳包,以便所述處理單元確定所述主服務(wù)器的主服務(wù)器地位。
    [0230]D28、根據(jù)D27所述的裝置,其特征在于,所述處理單元,用于當(dāng)在預(yù)設(shè)時長內(nèi)未接收到所述主服務(wù)器發(fā)送的心跳包時,否定所述主服務(wù)器的主服務(wù)器地位。
    [0231 ] D29、根據(jù)D24所述的裝置,其特征在于,所述發(fā)送單元,用于:
    [0232]向所述主服務(wù)器上報所述log日志的更新狀態(tài);
    [0233]當(dāng)更新成功時,根據(jù)所述主服務(wù)器的指示,將所述log日志中的所述通知消息下發(fā)給建立有連
    當(dāng)前第4頁1 2 3 4 5 
    網(wǎng)友詢問留言 已有0條留言
    • 還沒有人留言評論。精彩留言會獲得點贊!
    1