一.前言 关于2PC的理论知识请见:分布式_理论_03_2PC 这一节我们来看下github上一个优秀的2PC分布式事务开源框架的快速体验. 二.源码 源码请见: https://github.com/yu199195/Raincat 相关视频 http://www.iqiyi.com/u/1243078745/v 三.接入步骤 1.启动 TxManagerApplication 此工程为分布式事务的协调者 配置txManaager, 修改application.properties中你自己的r…
一.前言 关于2PC的理论知识请见:分布式_理论_03_2PC 这一节我们来看下github上一个优秀的2PC分布式事务开源框架的快速体验. 二.源码 源码请见: https://github.com/yu199195/Raincat 相关视频 http://www.iqiyi.com/u/1243078745/v 三.接入步骤 1.启动 TxManagerApplication 此工程为分布式事务的协调者 配置txManaager, 修改application.properties中你自己的r…
一.前言 上一节已经将raincat demo工程运行起来了,这一节来分析下raincat的源码 二.协调者启动过程 主要就是在启动类中通过如下代码来启动 netty nettyService.start() 三.参与者启动过程 1.参与者启动时序图 参与者在启动过程中,主要做了如下4件事: (1)保存SpringContext上下文 (2)通过加载spi,来使用用户自定义配置 (3)启动Netty客户端,与txManager进行连接,并且维持心跳. (4)启动事务补偿任务,建表,定时补偿. (…
一.前言 前面两节,我们已经将raincat的demo工程启动,并简单分析了下事务协调者与事务参与者的启动过程. 这一节,我们来看下raincat的事务提交过程. 二.事务提交过程概览 1.二阶段对应图 raincat是一个二阶段分布式事务处理框架,在事务的提交过程中,对应的二阶段如下: 第一阶段(准备阶段) 记录事务信息,准备提交. 第二阶段(提交阶段) 协调者发送提交通知,各参与者分别提交事务. 2.事务提交过程概览 整个事务的提交过程,如下: (1)切面开始,拦截 @TxTransacti…
一.前言 上一节已经将raincat demo工程运行起来了,这一节来分析下raincat启动过程的源码 主要包括: 事务协调者启动过程 事务参与者启动过程 二.协调者启动过程 主要就是在启动类中通过如下代码来启动 netty 服务端 nettyService.start() 三.参与者启动过程概览 参与者在启动过程中,主要做了如下5件事: (1)保存SpringContext上下文 (2)通过加载spi,来使用用户自定义配置(序列化方式.日志存储方式) (3)启动Netty客户端,与txMan…
Hmily框架特性 无缝集成Spring,Spring boot start. 无缝集成Dubbo,SpringCloud,Motan等rpc框架. 多种事务日志的存储方式(redis,mongdb,mysql等). 多种不同日志序列化方式(Kryo,protostuff,hession). 事务自动恢复. 支持内嵌事务的依赖传递. 代码零侵入,配置简单灵活. Hmily为什么这么高性能? 1.采用disruptor进行事务日志的异步读写(disruptor是一个无锁,无GC的并发编程框架) p…
Django快速体验 前语: 这一节内容是直接快速上手,后面的内容是对内容进行按步解释,如果不想看解析的,可以直接只看这一节的内容. 1.新建项目应用新建项目test1新建应用booktest 2.注册应用去test1下面的settings.py文件下注册应用 INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessio…
前言 最近在看neo4j相关的官网文档以及一些调优参数,同时也学了下Jmeter,为了测试下neo4j服务的性能,虽然不是专业搞测试的,但是我觉得每个优秀的开发者都应该学会主动压测自己服务和代码的性能,并非写完代码之后直接扔给测试就完事了,兵法云:知彼知己,才能百胜不殆嘛. jmeter是什么 jmeter是一款开源的测试工具,源码100%基于Java并开源,最初的设计目的是用来测试Web应用的,由于其非常轻量级和免费,后来又扩展到其他测试领域. jmeter的一些特点: 1.能够对HTTP,F…
SpringBoot 2.7.2 学习系列,本节内容快速体验Spring Boot,带大家了解它的基本使用.运行和打包. Spring Boot 基于 Spring 框架,底层离不开 IoC.AoP 等核心思想.Spring 4.0 提供了基于 Java Config 的开发方式,Spring Boot 应运而生,可以简化 Spring 应用开发过程,同时也可以快速方便的集成第三方框架,如 MyBatis.Redis 等. 0 版本说明 开发工具 IDEA 版本:2021.2 Maven 版本:…
很久之前,在博客园写了一篇文章,<分布式网游server的一些想法语言和平台的选择>,当时就有了用C#做网游服务端的想法.写了个Unity3d客户端分布式服务端框架,最近发布了1.0版本,取名ET框架.ET框架的目标就是简化客户端开发,简化分布式服务端开发,但是功能非常强大,完全可以作为一个大型分布式服务端使用.ET框架有很多创造性的设计: 1.可用VS单步调试的分布式服务端,N变1 一般来说,分布式服务端要启动很多进程,一旦进程多了,单步调试就变得非常困难,导致服务端开发基本上靠打log来查…