โปรเจ็กต์นี้เลิกใช้งานแล้วและไม่ได้รับการดูแลรักษาอีกต่อไป เราขอแนะนำให้ใช้เซิร์ฟเวอร์ Temporal CLI dev แทน
Temporalite คือการกระจายของ Temporal ที่ทำงานเป็นกระบวนการเดียวโดยไม่มีการพึ่งพารันไทม์เป็นศูนย์
การคงอยู่ของดิสก์และโหมดในหน่วยความจำได้รับการสนับสนุนผ่าน SQLite
ลองชมวิดีโอนี้เพื่อดูการแนะนำสั้นๆ และการสาธิต: youtu.be/Hz7ZZzafBoE [16:13] -- การสาธิตเริ่มเวลา 11:28 น.
เป้าหมายหลักของ Temporalite คือการทำให้การรัน Temporal ภายในเครื่องหรือในสภาพแวดล้อมการทดสอบเป็นเรื่องง่ายและรวดเร็ว
คุณสมบัติที่สอดคล้องกับเป้าหมายนี้:
ดาวน์โหลดและแยกรุ่นล่าสุดจากรุ่น GitHub
เริ่มเซิร์ฟเวอร์ชั่วคราว:
temporalite start --namespace default
ณ จุดนี้ คุณควรมีเซิร์ฟเวอร์ที่ทำงานบน localhost:7233
และเว็บอินเตอร์เฟสที่ http://localhost:8233
ใช้เครื่องมือบรรทัดคำสั่ง tctl
ของ Temporal เพื่อโต้ตอบกับเซิร์ฟเวอร์ Temporalite ในเครื่อง
tctl namespace list
tctl workflow list
ใช้แฟล็กวิธีใช้เพื่อดูตัวเลือกที่มีทั้งหมด:
temporalite start -h
คุณสามารถลงทะเบียนเนมสเปซล่วงหน้าได้เมื่อเริ่มต้นระบบ เพื่อให้พร้อมใช้งานได้ทันที:
temporalite start --namespace foo --namespace bar
การลงทะเบียนเนมสเปซด้วยวิธีล้าสมัยผ่าน tctl --namespace foo namespace register
ก็ใช้ได้เช่นกัน
ตามค่าเริ่มต้น temporalite
จะคงสถานะเป็นไฟล์ในไดเร็กทอรี config ของผู้ใช้ปัจจุบัน เส้นทางนี้อาจถูกแทนที่:
temporalite start -f my_test.db
โหมดในหน่วยความจำก็มีให้เช่นกัน โปรดทราบว่าข้อมูลทั้งหมดจะหายไปในการรีสตาร์ทแต่ละครั้ง
temporalite start --ephemeral
ตามค่าเริ่มต้น UI ของเว็บจะเริ่มต้นด้วย Temporalite UI สามารถปิดใช้งานได้ผ่านแฟล็กรันไทม์:
temporalite start --headless
หากต้องการสร้างโดยไม่มีเนื้อหา UI แบบคงที่ ให้ใช้แท็ก headless
build เมื่อรัน go build
การใช้งานขั้นสูงบางอย่างต้องใช้ค่าการกำหนดค่าแบบไดนามิกชั่วคราว ซึ่งโดยปกติจะตั้งค่าผ่านไฟล์การกำหนดค่าแบบไดนามิกภายในไฟล์การกำหนดค่าชั่วคราว หรือสามารถตั้งค่าการกำหนดค่าแบบไดนามิกผ่าน --dynamic-config-value KEY=JSON_VALUE
ตัวอย่างเช่น หากต้องการปิดใช้งานแคชแอตทริบิวต์การค้นหาเพื่อให้แอตทริบิวต์การค้นหาที่สร้างขึ้นพร้อมใช้งานทันที:
temporalite start --dynamic-config-value system.forceSearchAttributesCacheRefreshOnRead=true
ในการรวบรวมซอร์สให้รัน:
go build -o dist/temporalite ./cmd/temporalite
หากต้องการรันการทดสอบทั้งหมด:
go test ./...