Show HN: Pyproc – Call Python from Go Without CGO or Microservices
6 hours ago
- #Microservices alternative
- #Machine Learning
- #Go-Python integration
- pyproc enables calling Python functions from Go without CGO or microservices using Unix Domain Sockets for IPC.
- Key features include process isolation, true parallelism bypassing Python's GIL, connection pooling, and simple deployment.
- Ideal for integrating Python ML models (PyTorch, TensorFlow), data science libraries (pandas, numpy), and legacy Python code into Go services.
- Performance metrics show low latency (45μs p50) and high throughput (200,000+ req/s with 8 workers).
- Supports deployment in Kubernetes, Docker, and traditional server environments on Linux/macOS.
- Includes production-ready features like health checks, graceful shutdown, automatic restarts, and Prometheus metrics.
- Provides examples for various use cases including ML inference, data processing with pandas, and batch operations.
- Not suitable for cross-host communication, Windows, GPU management, large-scale ML serving, or real-time streaming.