Skip to content

tobehardest/seata-go

 
 

Repository files navigation

Seata-go: Simple Extensible Autonomous Transaction Architecture(Go version)

Build Status license

简体中文 ZH

What is seata-go?

Seata is a very mature distributed transaction framework, and is the de facto standard platform for distributed transaction technology in the Java field. Seata-go is the implementation version of go language in Seata multilingual ecosystem, which realizes the interoperability between Java and Go, so that Go developers can also use seata-go to realize distributed transactions. Please visit the official website of Seata to view the quick start and documentation.

The principle of seata-go is consistent with that of Seata-java, which is composed of TM, RM and TC. The functions of TC reuse Java, and the functions of TM and RM will be aligned with Seata-java later. The overall process is as follows:

TODO list

  • TCC
  • XA
  • AT
    • Insert SQL
    • Delete SQL
    • Insert on update SQL
    • Multi update SQL
    • Multi delete SQL
    • Select for update SQL
    • Update SQL
  • SAGA
  • TM
  • RPC communication
  • Transaction anti suspension
    • Manually way
    • Proxy datasource way
  • Null compensation
  • Configuration center
    • Configuration file
  • Registration Center
  • Metric monitoring
  • Compressor algorithm
  • Examples

How to run?

if you want to know how to use and integrate seata-go, please refer to seata/seata-go-samples

How to join us?

Seata-go is currently in the construction stage. Welcome colleagues in the industry to join the group and work with us to promote the construction of seata-go! If you want to contribute code to seata-go, you can refer to the code contribution Specification document to understand the specifications of the community, or you can join our community DingTalk group: 33069364 and communicate together!

image

Licence

Seata-go uses Apache license version 2.0. Please refer to the license file for more information.

About

Go Implementation For Seata

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.5%
  • Other 0.5%