An open API service indexing awesome lists of open source software.

https://github.com/quinost/go-projects

Go projects. Workerpool, health checker, grpc implementation
https://github.com/quinost/go-projects

go grpc health-check workerpool

Last synced: 14 days ago
JSON representation

Go projects. Workerpool, health checker, grpc implementation

Awesome Lists containing this project

README

          

Small projects in GO



![logo](image.png)

# gRPC
- gRPC Service – port 50051, handles business logic and external API calls
- HTTP Gateway – port 8080, exposes REST endpoints
- Internal communication via gRPC
- External access via HTTP

gRPC / Protocol Buffers
HTTP/REST
External currency API integration

# healthchecker
- Concurrent per-site monitoring - each site runs in its own goroutine with a ticker
- Each site gets a dedicated monitor worker
- Configurable intervals and timeouts via YAML
- Notifier pattern for status change alerts

YAML configuration
HTTP client
Structured logging (slog)
Wait groups for goroutine management

# warehouse
- Custom JWT Authentication Middleware
- Custom Database Migrator with version tracking and seeding system
- Custom Validator for input validation using struct tags
- Configuration Management with YAML (cfg package)
- Layered Architecture: Handlers → Services → Repositories → PostgreSQL

PostgreSQL + custom migrator with schema_migrations table
JWT Authentication (golang-jwt/jwt) with custom middleware
bcrypt for password hashing
YAML Config
Custom Validator based on reflection and struct tags

# workerpool-thumbnail
- Worker pool for concurrent image processing
- HTTP server with file upload and validation
- Asynchronous job processing with buffered channels
- Graceful shutdown of both server and worker pool

HTTP server with multipart form handling
Image processing (decode/encode, scaling with Catmull-Rom)
Concurrent worker pool implementation
File system operations for thumbnail storage