91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

什么是seata協議

發布時間:2021-07-20 18:20:46 來源:億速云 閱讀:233 作者:chen 欄目:大數據

這篇文章主要講解了“什么是seata協議”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“什么是seata協議”吧!

代碼入口

io.seata.core.rpc.netty.NettyClientBootstrap#start

bootstrap.handler(
            new ChannelInitializer<SocketChannel>() {
                @Override
                public void initChannel(SocketChannel ch) {
                    ChannelPipeline pipeline = ch.pipeline();
                    pipeline.addLast(
                        new IdleStateHandler(nettyClientConfig.getChannelMaxReadIdleSeconds(),
                            nettyClientConfig.getChannelMaxWriteIdleSeconds(),
                            nettyClientConfig.getChannelMaxAllIdleSeconds()))
                        .addLast(new ProtocolV1Decoder())
                        .addLast(new ProtocolV1Encoder());
                    if (channelHandlers != null) {
                        addChannelPipelineLast(ch, channelHandlers);
                    }
                }
            });

io.seata.core.rpc.netty.v1.ProtocolV1Encoder#encode

io.seata.core.protocol.RpcMessage

協議規則

2個字節的模數([-38,-38])| 1個字節的版本號 | 6個字節的長度 | 1個字節的messageType | 一個字節的codec值| 一個字節的compressor | 4個字節的messagId值 | header數據值(2個字節的key長度 | value數據值) | 業務數據值

codec: 序列化類型:如 seata,kryo;protobuf;fst

compressor: 壓縮類型:如 NONE ,GZIP,BZIP2,LZ4

6個字節的長度:

4個字節(全部數據的長度): 默認長度16+headLength+bodyLength

2個字節的(headLength),默認長度16

業務數據序列化

io.seata.serializer.seata.SeataSerializer#serialize

2個字節(typecode的值)| body

typecode: 消息類型序編碼器 如(RegisterTMRequestCodec,BranchRollbackRequestCodec)

body:

2個字節(xid的長度)| xid的數據| 8個字節(branchId值)| 一個byte(分支事務類型ordinal值)|2個字節(ResourceId的長度)| ResourceId的值|4個字節(applicationData的長度)| applicationData的值|

事務類型: AT,TCC,XA,SAGA

感謝各位的閱讀,以上就是“什么是seata協議”的內容了,經過本文的學習后,相信大家對什么是seata協議這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永定县| 津市市| 武胜县| 班戈县| 大田县| 沙坪坝区| 师宗县| 荃湾区| 锡林郭勒盟| 武川县| 外汇| 元阳县| 仙桃市| 沙洋县| 巨野县| 永年县| 营山县| 同江市| 秀山| 武陟县| 精河县| 太仓市| 石楼县| 民县| 井研县| 寻甸| 宁蒗| 义乌市| 临颍县| 阳山县| 沅陵县| 澄江县| 天全县| 永顺县| 建湖县| 祁门县| 栾城县| 平罗县| 和田市| 石阡县| 上高县|