- Cài đặt chỉ với một file SQL và chạy (tick) chỉ bằng pg_cron
- Hàng đợi thông điệp tích hợp trong Postgres tái hiện kiến trúc PgQ thời Skype bằng PL/pgSQL thuần, có thể dùng ngay trên managed Postgres mà không cần extension C hay daemon bên ngoài
- Loại bỏ tận gốc các vấn đề cố hữu của hàng đợi dùng SKIP LOCKED là tích tụ dead tuple và tải VACUUM bằng batch dựa trên snapshot + xoay vòng bảng bằng TRUNCATE, nên vận hành nhiều tháng vẫn không suy giảm hiệu năng
- Cấu trúc nhật ký sự kiện dùng chung + con trỏ độc lập theo từng consumer tương tự Kafka topic, hỗ trợ fan-out native — nhiều subscriber có thể nhận độc lập toàn bộ sự kiện mà không cần sao chép dữ liệu
- Độ trễ truyền end-to-end ở cấu hình mặc định là ~1-2 giây (khoảng tick + khoảng poll), còn từng lệnh gọi send/receive/ack riêng lẻ ở mức micro giây
- Theo benchmark sơ bộ, insert bằng PL/pgSQL đạt ~86k ev/s, tốc độ đọc của consumer ~2.4M ev/s, và trong bài test liên tục 30 phút mức tăng dead tuple bằng 0
- Dựa trên SQL API như
pgque.send(), pgque.receive(), pgque.ack(), nên hoạt động với mọi driver Postgres bất kể ngôn ngữ như Python, Go, TypeScript
- Tương thích với toàn bộ các nhà cung cấp managed Postgres lớn như RDS, Aurora, Cloud SQL, AlloyDB, Supabase, Neon, không cần build riêng hay phê duyệt từ provider
- Tích hợp sẵn phân tách quyền hạn dựa trên 3 vai trò (pgque_reader, pgque_writer, pgque_admin), không cần superuser cho user ứng dụng
- Bản thân PgQ đã được kiểm chứng production hơn 10 năm ở quy mô hàng trăm triệu người dùng thời Skype, nhưng PgQue với tư cách sản phẩm vẫn đang ở giai đoạn đầu (v0.1)
- Giấy phép Apache-2.0
Chưa có bình luận nào.