Skip to content

Quinost/go-projects

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Small projects in GO


logo

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

About

Go projects. Workerpool, health checker, grpc implementation

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages