️ 이 프로젝트는 더 이상 사용되지 않으며 더 이상 유지 관리되지 않습니다. 대신 Temporal CLI 개발 서버를 사용하는 것이 좋습니다.️
Temporalite는 런타임 종속성이 전혀 없는 단일 프로세스로 실행되는 Temporal 배포판입니다.
디스크 지속성과 메모리 내 모드는 모두 SQLite를 통해 지원됩니다.
간략한 소개와 데모를 보려면 다음 비디오를 확인하세요: youtu.be/Hz7ZZzafBoE [16:13] -- 데모는 11:28에 시작됩니다.
Temporalite의 주요 목표는 로컬에서 또는 테스트 환경에서 Temporal을 간단하고 빠르게 실행하도록 만드는 것입니다.
이 목표에 부합하는 기능:
GitHub 릴리스에서 최신 릴리스를 다운로드하고 추출합니다.
임시 서버 시작:
temporalite start --namespace default
이제 localhost:7233
에서 실행 중인 서버와 http://localhost:8233에 웹 인터페이스가 있어야 합니다.
Temporal의 명령줄 도구 tctl
사용하여 로컬 Temporalite 서버와 상호 작용합니다.
tctl namespace list
tctl workflow list
사용 가능한 모든 옵션을 보려면 도움말 플래그를 사용하세요.
temporalite start -h
네임스페이스는 시작 시 사전 등록되어 즉시 사용할 수 있습니다.
temporalite start --namespace foo --namespace bar
tctl --namespace foo namespace register
등록을 통해 구식 방식으로 네임스페이스를 등록하는 것도 작동합니다!
기본적으로 temporalite
현재 사용자의 구성 디렉터리에 있는 파일에 상태를 유지합니다. 이 경로는 재정의될 수 있습니다.
temporalite start -f my_test.db
인메모리 모드도 사용할 수 있습니다. 다시 시작할 때마다 모든 데이터가 손실됩니다.
temporalite start --ephemeral
기본적으로 웹 UI는 Temporalite로 시작됩니다. 런타임 플래그를 통해 UI를 비활성화할 수 있습니다.
temporalite start --headless
정적 UI 자산 없이 빌드하려면 go build
실행 시 headless
빌드 태그를 사용하세요.
일부 고급 사용에는 일반적으로 임시 구성 파일 내의 동적 구성 파일을 통해 설정되는 임시 동적 구성 값이 필요합니다. 또는 --dynamic-config-value KEY=JSON_VALUE
통해 동적 구성 값을 설정할 수 있습니다.
예를 들어 생성된 검색 속성을 즉시 사용할 수 있도록 검색 속성 캐시를 비활성화하려면 다음을 수행합니다.
temporalite start --dynamic-config-value system.forceSearchAttributesCacheRefreshOnRead=true
소스를 컴파일하려면 다음을 실행하세요.
go build -o dist/temporalite ./cmd/temporalite
모든 테스트를 실행하려면 다음 안내를 따르세요.
go test ./...