org.dromara:raincat-common

Parent pom providing dependency and plugin management for applications built with Maven

License

License

GroupId

GroupId

org.dromara
ArtifactId

ArtifactId

raincat-common
Last Version

Last Version

2.0.1-RELEASE
Release Date

Release Date

Type

Type

jar
Description

Description

Parent pom providing dependency and plugin management for applications built with Maven
Project URL

Project URL

https://projects.spring.io/spring-boot/#/spring-boot-starter-parent/raincat-common
Project Organization

Project Organization

dromara

Download raincat-common

How to add to project

<!-- https://jarcasting.com/artifacts/org.dromara/raincat-common/ -->
<dependency>
    <groupId>org.dromara</groupId>
    <artifactId>raincat-common</artifactId>
    <version>2.0.1-RELEASE</version>
</dependency>
// https://jarcasting.com/artifacts/org.dromara/raincat-common/
implementation 'org.dromara:raincat-common:2.0.1-RELEASE'
// https://jarcasting.com/artifacts/org.dromara/raincat-common/
implementation ("org.dromara:raincat-common:2.0.1-RELEASE")
'org.dromara:raincat-common:jar:2.0.1-RELEASE'
<dependency org="org.dromara" name="raincat-common" rev="2.0.1-RELEASE">
  <artifact name="raincat-common" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.dromara', module='raincat-common', version='2.0.1-RELEASE')
)
libraryDependencies += "org.dromara" % "raincat-common" % "2.0.1-RELEASE"
[org.dromara/raincat-common "2.0.1-RELEASE"]

Dependencies

compile (18)

Group / Artifact Type Version
org.dromara : raincat-annotation jar 2.0.1-RELEASE
org.apache.commons : commons-lang3 jar 3.3.2
commons-configuration : commons-configuration jar 1.10
org.slf4j : slf4j-api jar 1.7.25
ch.qos.logback : logback-core jar 1.2.3
ch.qos.logback : logback-classic jar 1.2.3
com.squareup.okhttp3 : okhttp jar 3.7.0
com.google.code.gson : gson jar 2.6.2
com.google.guava : guava jar 21.0
org.projectlombok : lombok jar 1.16.14
io.netty : netty-all jar 4.1.16.Final
com.esotericsoftware : kryo-shaded jar 4.0.0
com.dyuproject.protostuff : protostuff-core jar 1.0.8
com.dyuproject.protostuff : protostuff-runtime jar 1.0.8
org.apache.commons : commons-pool2 jar 2.5.0
com.caucho : hessian jar 4.0.38
redis.clients : jedis jar 2.9.0
com.fasterxml.jackson.core : jackson-databind jar 2.9.5

provided (2)

Group / Artifact Type Version
org.springframework : spring-core jar 5.0.7.RELEASE
org.mongodb : mongo-java-driver jar 3.5.0

Project Modules

There are no modules declared in this project.

Raincat

Codacy Badge Total lines License Maven Central QQ群

A strongly consistent distributed transaction framework

Modules

  • raincat-admin: Transaction log management background

  • raincat-annotation : Framework common annotation

  • raincat-common : Framework common class

  • raincat-core : Framework core package (annotation processing, log storage...)

  • raincat-dashboard : Management background front-end

  • raincat-dubbo : Support for the dubbo framework Less than 2.7 version

  • raincat-motan : Support for the motan rpc framework

  • raincat-springcloud : Support for the spring cloud rpc framework

  • raincat-spring-boot-starter : Support for the spring boot starter

  • raincat-sample : Examples using the raincat framework

Features

  • All spring versions are supported and Seamless integration

  • Provides support for the springcloud dubbo motan RPC framework

  • Provides integration of the spring boot starter approach

  • Support Nested transaction

  • Local transaction storage support : redis mongodb zookeeper file mysql

  • Transaction log serialization support : java hessian kryo protostuff

  • Spi extension : Users can customize the storage of serialization and transaction logs

Transaction Role

  • Transaction starter : @TxTransaction for The entry point of the first section

  • Transaction participant : Rpc invoker in the method (Add @TxTransaction)

  • Transaction coordinator : Coordinate the rollback of commit transactions

Raincat-Manager

It is the coordinator of the transaction and USES netty communication framework to communicate with participants and initiators.

Use eureka as a registry to support cluster deployment.

Use redis to store transaction information.

It has to start early.

Prerequisite

  • You must use jdk1.8 +

  • You must be a user of the spring framework

  • You must use one of the dubbo, motan, and springcloud RPC frameworks

About

raincat is A strongly consistent distributed transaction framework.

Good concurrency support, blocking spring transaction thread commit.

When the execution of the slice is complete and there is no exception,

the submission command is sent asynchronously by the coordinator to achieve strong consistency.

If you want to use it or get a quick look at it. Quick Start

Stargazers

Stargazers over time

Flow

Support

Versions

Version
2.0.1-RELEASE
2.0.0-RELEASE