Spring Cloud 애플리케이션을 Tencent의 Polaris와 연동해 서비스 검색 및 거버넌스를 제공하는 Spring Cloud 구현체입니다.
apache/incubator-seata
AT, TCC, Saga, XA 모드를 지원하는 마이크로서비스용 오픈소스 분산 트랜잭션 솔루션입니다.
- 스타
- 26,002
- 포크
- 8,830
- 열린 이슈
- 911
- 마지막 커밋
- 7일 전
어떤 프로젝트인가요?
Apache Seata는 마이크로서비스를 위한 분산 트랜잭션 프레임워크입니다. 자체 데이터베이스를 사용하는 여러 서비스에 걸쳐 비즈니스 작업을 수행하면, 하나의 로컬 트랜잭션만으로는 서비스 간 데이터 일관성을 유지할 수 없습니다. Seata는 글로벌 트랜잭션을 통해 각 분기 트랜잭션을 조정하며, 전체를 한꺼번에 커밋하거나 롤백할 수 있습니다.
프레임워크는 세 가지 역할로 구성됩니다. 글로벌 및 분기 트랜잭션 상태를 추적하고 커밋 또는 롤백을 진행하는 Transaction Coordinator(TC), 글로벌 트랜잭션의 범위를 정의하는 Transaction Manager(TM), 분기 트랜잭션을 등록하고 커밋 또는 롤백을 실행하는 Resource Manager(RM)입니다. 서비스 호출 체인을 따라 글로벌 트랜잭션 ID(XID)가 전달되므로 각 서비스가 같은 트랜잭션에 참여할 수 있습니다.
이 프로젝트는 Java로 작성되었습니다. 일반적인 용도를 위한 seata-all 라이브러리와 Spring Boot 애플리케이션용 seata-spring-boot-starter를 제공하며, 생태계에는 Go 클라이언트, 샘플, Kubernetes 통합, CLI가 포함됩니다.
핵심 기능
- 01XID를 전파해 여러 마이크로서비스에 걸친 글로벌 트랜잭션을 조정합니다.
- 02Transaction Coordinator, Transaction Manager, Resource Manager로 역할을 분리합니다.
- 03Java 라이브러리(seata-all)와 Spring Boot 스타터를 제공합니다.
- 04생태계에 Go 클라이언트, Kubernetes 통합, CLI 도구가 포함됩니다.
활용 사례
- 서로 분리된 마이크로서비스 간 주문, 결제, 재고 데이터의 일관성을 유지합니다.
- 기존 Java 또는 Spring Boot 시스템에 분산 트랜잭션 지원을 추가합니다.
- 마이크로서비스 배포의 일부로 Kubernetes에서 Seata를 실행합니다.
빠른 시작
- 1
Maven 의존성 seata-all 또는 seata-spring-boot-starter(버전 2.5.0)를 추가합니다
- 2
공식 Quick Start 가이드에 따라 Seata 서버를 배포합니다
사용 전 알아둘 점
- 트랜잭션을 실행하려면 별도의 Seata 코디네이터 서버를 배포하고 운영해야 합니다.
- README에는 프로젝트가 Apache Incubator(인큐베이팅 중)로 표시되어 있습니다.
토픽
자주 묻는 질문
- incubator-seata은(는) 무엇인가요?
- AT, TCC, Saga, XA 모드를 지원하는 마이크로서비스용 오픈소스 분산 트랜잭션 솔루션입니다. Apache Seata는 마이크로서비스를 위한 분산 트랜잭션 프레임워크입니다. 자체 데이터베이스를 사용하는 여러 서비스에 걸쳐 비즈니스 작업을 수행하면, 하나의 로컬 트랜잭션만으로는 서비스 간 데이터 일관성을 유지할 수 없습니다. Seata는 글로벌 트랜잭션을 통해 각 분기 트랜잭션을 조정하며, 전체를 한꺼번에 커밋하거나 롤백할 수 있습니다.
- incubator-seata은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- incubator-seata은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- incubator-seata은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. incubator-seata의 마지막 커밋은 2026년 10월 31일입니다.
- incubator-seata은(는) 어디에 사용할 수 있나요?
- 서로 분리된 마이크로서비스 간 주문, 결제, 재고 데이터의 일관성을 유지합니다. 기존 Java 또는 Spring Boot 시스템에 분산 트랜잭션 지원을 추가합니다. 마이크로서비스 배포의 일부로 Kubernetes에서 Seata를 실행합니다.
- incubator-seata는 어떻게 설치하나요?
- Maven 의존성 seata-all 또는 seata-spring-boot-starter(버전 2.5.0)를 추가합니다 공식 Quick Start 가이드에 따라 Seata 서버를 배포합니다
- incubator-seata은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/apache/incubator-seata
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Solon은 Servlet이나 Spring에 의존하지 않는, Spring보다 가벼운 대안으로 엔터프라이즈 서비스를 구축할 수 있는 Java 애플리케이션 프레임워크입니다.
Go 표준 net/http 패키지를 기반으로 한 고성능 미니멀 웹 프레임워크입니다.
데이터베이스, 관측성, gRPC 및 Kubernetes 지향 기본 설정을 갖춘 마이크로서비스 구축용 독자적인 Go 프레임워크입니다.
HTTP 서버, ORM, 캐싱, 로깅, 트레이싱을 제공하는 모듈형 Go 애플리케이션 프레임워크로, 전체 프레임워크나 개별 컴포넌트로 사용할 수 있습니다.
플러그형 서비스 디스커버리, 다양한 전송 방식과 코덱, HTTP를 통한 다국어 접근을 지원하는 마이크로서비스 구축용 Go RPC 프레임워크입니다.