examples/

directory
v1.4.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 15, 2026 License: Apache-2.0

README ΒΆ

LedgerQ Examples

Learn LedgerQ through runnable examples. Start with simple and progress through features.

Learning Path

πŸ”° Getting Started
  1. simple - Basic enqueue/dequeue operations ⭐ Start here!
  2. producer-consumer - Concurrent access patterns
πŸš€ Core Features
  1. ttl - Message expiration with time-to-live
  2. headers - Message metadata and key-value pairs
  3. replay - Seeking and time-travel through message history
  4. streaming - Real-time event processing with push-based API
⚑ Advanced Features (v1.1.0+)
  1. priority - Priority ordering (v1.1.0)
  2. dlq - Dead Letter Queue and retry handling (v1.2.0)
  3. compression - Payload compression with GZIP (v1.3.0)
  4. deduplication - Idempotent message processing (v1.4.0)
πŸ“Š Operational
  1. metrics - Monitoring and observability

Running Examples

All examples are self-contained with clear output:

cd examples/simple
go run main.go

Quick Reference

Example Feature Use Case
simple Basic ops First-time users
producer-consumer Concurrency Multi-threaded processing
ttl Expiration Temporary messages, caches
headers Metadata Message tagging, routing
replay Seeking Reprocessing, debugging
streaming Real-time Event-driven architectures
priority Ordering Urgent task processing
dlq Failures Error handling, retries
compression Disk saving Large payloads (JSON, logs)
deduplication Idempotency Exactly-once semantics
metrics Monitoring Production observability

Example Structure

Each example demonstrates:

  • Setup: How to configure the queue
  • Core API: Key operations for that feature
  • Output: What you'll see when running
  • Use cases: When to use this pattern

Need Help?

Contributing Examples

Found a useful pattern? Consider contributing an example:

  1. Create directory: examples/your-feature/
  2. Add main.go with clear comments
  3. Add README.md following our template (see streaming/README.md)
  4. Update this index
  5. Submit PR

Total Examples: 11 | Difficulty: 🟒 Beginner β†’ 🟑 Intermediate β†’ πŸ”΄ Advanced

Directories ΒΆ

Path Synopsis
Package main demonstrates LedgerQ compression features.
Package main demonstrates LedgerQ compression features.
Package main demonstrates message deduplication in LedgerQ.
Package main demonstrates message deduplication in LedgerQ.
Package main demonstrates Dead Letter Queue (DLQ) usage in LedgerQ.
Package main demonstrates Dead Letter Queue (DLQ) usage in LedgerQ.
Package main demonstrates using LedgerQ with metrics collection.
Package main demonstrates using LedgerQ with metrics collection.
Package main demonstrates producer-consumer pattern with LedgerQ
Package main demonstrates producer-consumer pattern with LedgerQ
Package main demonstrates replay capabilities of LedgerQ
Package main demonstrates replay capabilities of LedgerQ
Package main demonstrates basic LedgerQ usage
Package main demonstrates basic LedgerQ usage
Package main demonstrates real-time streaming message processing with LedgerQ.
Package main demonstrates real-time streaming message processing with LedgerQ.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL