成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

PHP:消息系統(tǒng)-消息事物模式(代碼全篇)

dkzwm / 3335人閱讀

摘要:目錄介紹消息事物類主業(yè)務(wù)類事物類消息事物類消息標(biāo)簽未發(fā)送確認(rèn)發(fā)送發(fā)送成功已取消請(qǐng)求發(fā)送消息根據(jù)進(jìn)行處理只記錄消息數(shù)據(jù)不發(fā)送消息標(biāo)記消息為返回消息唯一標(biāo)識(shí)確認(rèn)發(fā)送消息根據(jù)對(duì)消息進(jìn)行處理發(fā)送消息數(shù)據(jù)標(biāo)記消息為消息發(fā)送成功后標(biāo)記消息為取消發(fā)送消息

目錄介紹

MessageTr.php 消息事物類

Business.php 主業(yè)務(wù)類

BusinessDb.php DB事物類

MessageTr.php

Business.php
messageTr = new MessageTr();
    }

    /**
     * 業(yè)務(wù)處理
     */
    public function deal()
    {
        //初始化
        $this->init();
        /** 發(fā)送消息事物請(qǐng)求
         * @var $uniqueId string 消息事物返回的唯一標(biāo)識(shí)
         */
        $uniqueId = $this->messageTr->mtSend();
        //記錄本地消息
        $this->message();
        //事物
        $tr = new BusinessDb();
        $tr->trBegin();
        //TCC事物模型 try-commit-cancel
        try{
            //業(yè)務(wù)處理 do something
            //事物提交
            $tr->trCommit();
            //確認(rèn)發(fā)送消息事物
            $this->messageTr->mtSure($uniqueId);
            //改變本地消息
            $this->message();
        }catch (Exception $exception){
            //事物回滾
            $tr->trRollback();
            //回滾消息事物
            $this->messageTr->mtCancel($uniqueId);
            //改變本地消息
            $this->message();
        }
    }

    public function message()
    {
        //記錄消息的發(fā)送,確認(rèn)發(fā)送,回滾
    }
}
BusinessDb.php

圖解

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/31152.html

相關(guān)文章

  • PHP+RabbitMQ實(shí)現(xiàn)消息隊(duì)列(代碼全篇)

    摘要:前言先安裝對(duì)應(yīng)的這里用的是不同的擴(kuò)展實(shí)現(xiàn)方式會(huì)有細(xì)微的差異擴(kuò)展地址具體以官網(wǎng)為準(zhǔn)介紹配置信息基類生產(chǎn)者類消費(fèi)者類消費(fèi)者可有多個(gè)配置交換機(jī)路由生產(chǎn)者路由只控制發(fā)送成功不接受消費(fèi)者是否收到頻道 前言 先安裝PHP對(duì)應(yīng)的RabbitMQ,這里用的是 php_amqp 不同的擴(kuò)展實(shí)現(xiàn)方式會(huì)有細(xì)微的差異. php擴(kuò)展地址: http://pecl.php.net/package/amqp 具...

    weakish 評(píng)論0 收藏0
  • 面向?qū)ο笤O(shè)計(jì)與分析--概念篇

    摘要:什么事面向?qū)ο竺嫦驅(qū)ο蠓椒ㄊ且环N運(yùn)用對(duì)象,類,繼承,封裝,聚合,關(guān)聯(lián),消息,多態(tài)等概念和原則來構(gòu)造軟件系統(tǒng)的開發(fā)思想方法。面向?qū)ο蠓椒ㄒ员姸嗟念惣敖换ツJ筋愰g的協(xié)同工作為中心。 1.什么事面向?qū)ο螅?面向?qū)ο蠓椒ㄊ且环N運(yùn)用對(duì)象,類,繼承,封裝,聚合,關(guān)聯(lián),消息,多態(tài)等概念和原則來構(gòu)造軟件系統(tǒng)的開發(fā)思想(方法)。 2.面向?qū)ο笾械牡幕靖拍睿?A.對(duì)象:把問題域中的事物抽象地表示為系統(tǒng)中...

    王軍 評(píng)論0 收藏0
  • 關(guān)于MQ的幾件小事(四)如何保證消息不丟失

    摘要:消費(fèi)端弄丟了數(shù)據(jù)關(guān)閉自動(dòng)提交,在自己處理完畢之后手動(dòng)提交,這樣就不會(huì)丟失數(shù)據(jù)。弄丟了數(shù)據(jù)一般要求設(shè)置個(gè)參數(shù)來保證消息不丟失給設(shè)置參數(shù)這個(gè)值必須大于,表示要求每個(gè)必須至少有個(gè)副本。上一篇如何保證消息不重復(fù)消費(fèi)下一篇如何保證消息按順序執(zhí)行 1.mq原則 數(shù)據(jù)不能多,也不能少,不能多是說消息不能重復(fù)消費(fèi),這個(gè)我們上一節(jié)已解決;不能少,就是說不能丟失數(shù)據(jù)。如果mq傳遞的是非常核心的消息,支撐核心的業(yè)...

    stackvoid 評(píng)論0 收藏0
  • Hola~ 一款基于Electron的聊天軟件

    摘要:前言本項(xiàng)目旨在從零到壹,制作一款界面精美的聊天軟件。因?yàn)楸救耸情_發(fā),設(shè)計(jì)功底欠缺,所以軟件設(shè)計(jì)的有點(diǎn)丑,如果有大神有更好的,歡迎。 Hola 前言 本項(xiàng)目旨在從零到壹,制作一款界面精美的聊天軟件。 Github 地址因?yàn)橐压ぷ?,所以可能沒有多少時(shí)間來繼續(xù)跟進(jìn)這個(gè)項(xiàng)目了,項(xiàng)目可優(yōu)化的點(diǎn)已在下文列出,歡迎大家 Fork 或 Star。 ps: 征 logo 一枚。因?yàn)楸救耸情_發(fā),設(shè)計(jì)功底...

    Kaede 評(píng)論0 收藏0
  • 消息中間件——RabbitMQ(二)各大主流消息中間件綜合對(duì)比介紹!

    摘要:主流消息中間件介紹是由出品,是一個(gè)完全支持和規(guī)范的實(shí)現(xiàn)。主流消息中間件介紹是阿里開源的消息中間件,目前也已經(jīng)孵化為頂級(jí)項(xiàng)目。 showImg(https://img-blog.csdnimg.cn/20190509221741422.gif);showImg(https://img-blog.csdnimg.cn/20190718204938932.png?x-oss-process=...

    hiyang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<