真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

分布式事務(wù)框架DogTcc是怎么樣的

這篇文章將為大家詳細(xì)講解有關(guān)分布式事務(wù)框架DogTcc是怎么樣的,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

創(chuàng)新互聯(lián)建站專(zhuān)注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、金州網(wǎng)絡(luò)推廣、小程序開(kāi)發(fā)、金州網(wǎng)絡(luò)營(yíng)銷(xiāo)、金州企業(yè)策劃、金州品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供金州建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com

Dog Tcc是什么?

  • DogTcc是一個(gè)基于注解的高性能 分布式事務(wù) TCC框架。感謝于他的框架設(shè)計(jì),可達(dá)到2ms/事務(wù),支持鏈?zhǔn)秸{(diào)用,損耗線性增長(zhǎng)。

框架特性

  • 高速,事務(wù)發(fā)起方損耗 2.15ms每事務(wù),事務(wù)被調(diào)方損耗 2.13ms每事務(wù)

  • 損耗隨事務(wù)鏈變寬[A 調(diào)用B,C,D,E..],或者變深[A 調(diào)用B,B調(diào)用C,C調(diào)用D..],線性增長(zhǎng)

  • 對(duì)原有服務(wù)無(wú)侵入,標(biāo)注是基于方法而不是RPC接口的,可以在需要回滾的最小單位方法上添加標(biāo)注

  • 易用性高,使用者通過(guò)標(biāo)注,和實(shí)現(xiàn)指定的回滾和確認(rèn)接口,即可集成框架

  • 節(jié)點(diǎn)無(wú)本地狀態(tài),部署多臺(tái)即可實(shí)現(xiàn)集群,無(wú)需多余配置

  • 和協(xié)議無(wú)關(guān),使用者只要實(shí)現(xiàn)事務(wù)的協(xié)議注入即可集成到框架中,可參照Spring模塊

  • 和消息服務(wù)器無(wú)關(guān),框架提供了消息服務(wù)接口,使用者可使用其他消息中間件,可參考zookeeper模塊

  • 支持事務(wù)鏈,事務(wù)鏈長(zhǎng)度不影響事務(wù)性能

  • 故障恢復(fù),任何服務(wù)節(jié)點(diǎn)丟失都不會(huì)影響最終一致性,丟失節(jié)點(diǎn)的事務(wù)會(huì)被同類(lèi)節(jié)點(diǎn)托管,或者在丟失節(jié)點(diǎn)啟動(dòng)時(shí)候恢復(fù)

  • 錯(cuò)誤通知,對(duì)于極端情況,Confirm或者Cancel失敗,系統(tǒng)會(huì)通過(guò)第三方接口通知,用戶需要實(shí)現(xiàn)該接口定義的方法

性能報(bào)告

  • 測(cè)試機(jī)配置

    cpu family : 6 model : 63 model name : Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz

    Linux version 3.10.0-327.el7.x86_64

    4G

    • 內(nèi)存

    • 操作系統(tǒng)

    • Cpu

  • 啟動(dòng)配置

    • zookeeper 默認(rèn)配置啟動(dòng)

    • 注冊(cè)中心 和 Server1 Server2 Server3

      啟動(dòng)參數(shù):-Xms256m -Xmx512m

  • 測(cè)試用例 [見(jiàn)Server1工程的Server1ApplicationController]

    • 鏈?zhǔn)秸{(diào)用:Server1 調(diào)用 Server2 ,Server3 ; Server2 調(diào)用 Server3

    • 單次調(diào)用:Server1 調(diào)用 Server3

    • 為了降低業(yè)務(wù)對(duì)框架性能測(cè)試的影響,Server2 和 Server3 的業(yè)務(wù)代碼為空。

    • Server2 中有一個(gè)Call單元

      Call(有回滾需求的方法)定義請(qǐng)見(jiàn): https://github.com/sunpengChina/dog/wiki/DogTcc-architecture

    • Server3 中有兩個(gè)Call單元

  • 性能報(bào)告

    • [1]非線程5000次非TCC事務(wù)調(diào)用: 11325ms

    • [2]非線程5000次TCC事務(wù)單次調(diào)用: 34133ms

    • [3]10線程,各500次循環(huán),共5000次鏈?zhǔn)?TCC事務(wù)調(diào)用:49826ms

    • [4]10線程,各500次循環(huán),共5000次鏈?zhǔn)?非TCC事務(wù)調(diào)用:6458ms

    • [5]10線程,各500次循環(huán),共5000次,TCC事務(wù)單次調(diào)用:35566ms

    • [6]10線程,各500次循環(huán),共5000次,非TCC事務(wù)單次調(diào)用:2884ms

  • 結(jié)論

    設(shè)tcc單次調(diào)用,發(fā)起方損耗為x (ms),call損耗為y (ms)

    • 根據(jù)性能報(bào)告的[3]和[4],可得 x + 3y = (49826 - 6458)/5000 = 8.67 ms

    • 根據(jù)性能報(bào)告的[5]和[6], 可得 x + 2y = (35566-2884)/5000 = 6.52 ms

    • 可得tcc發(fā)起方單次損耗為:2.25 ms ; Call方損耗為 2.13 ms

快速開(kāi)始

  • 準(zhǔn)備zookeeper

    wget https://raw.githubusercontent.com/wiki/sunpengChina/dog/zookeeper-3.4.13.zip

    解壓文件 unzip zookeeper-3.4.13.zip

    進(jìn)入zk目錄 cd zookeeper-3.4.13/bin

    啟動(dòng)zk服務(wù)器 ./zkServer.sh start

    打開(kāi)zk客戶端 ./zkCli.sh

    在zk 客戶端中執(zhí)行 create /dog "dog"

  • 下載源碼

    https://github.com/sunpengChina/dog.git

    進(jìn)入源碼根目錄,編譯源碼 mvn clean install

  • 啟動(dòng)服務(wù)

    啟動(dòng)springCloud配置中心: cd jar -jar eureka/target/eureka-1.0-SNAPSHOT.jar

    啟動(dòng)服務(wù)Server1:jar -jar Server1/target/Server1-1.0-SNAPSHOT.jar

    啟動(dòng)服務(wù)Server2:jar -jar Server2/target/Server2-1.0-SNAPSHOT.jar

    啟動(dòng)服務(wù)Server3:jar -jar Server3/target/Server3-1.0-SNAPSHOT.jar

  • 在瀏覽器中測(cè)試

    http://127.0.0.1:8081/chainTcc 一次鏈?zhǔn)绞聞?wù)調(diào)用,檢驗(yàn)?zāi)愕南到y(tǒng)是否正常部署

    http://127.0.0.1:8081/noTcc5000 5000次無(wú)事務(wù)調(diào)用的時(shí)間

    http://127.0.0.1:8081/singleTcc5000 5000次簡(jiǎn)單事務(wù)單元的時(shí)間

    http://127.0.0.1:8081/chainTcc5000thread 10個(gè)線程各500次調(diào)用TCC鏈?zhǔn)绞聞?wù),調(diào)用需要的時(shí)間

    http://127.0.0.1:8081/chainNoTcc5000thread 10個(gè)線程各500次調(diào)用鏈?zhǔn)椒荰CC事務(wù),調(diào)用需要的時(shí)間

    http://127.0.0.1:8081/singleTcc5000thread 10個(gè)線程各500次調(diào)用非鏈?zhǔn)絋CC事務(wù),調(diào)用需要的時(shí)間

    http://127.0.0.1:8081/singleNoTcc5000thread 10個(gè)線程各500次調(diào)用非鏈?zhǔn)椒荰CC事務(wù),調(diào)用需要的時(shí)間

關(guān)于分布式事務(wù)框架DogTcc是怎么樣的就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。


文章名稱(chēng):分布式事務(wù)框架DogTcc是怎么樣的
轉(zhuǎn)載來(lái)源:http://weahome.cn/article/iigjcj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部