initial commit

This commit is contained in:
m.zare
2026-04-10 18:25:21 +03:30
commit 77ca6c34a3
263 changed files with 34470 additions and 0 deletions

38
config/rabbit.go Normal file
View File

@@ -0,0 +1,38 @@
package config
import (
"fmt"
"time"
)
// RabbitMQConfig holds configuration for RabbitMQ
type RabbitMQConfig struct {
Host string
Port int
User string
Password string
VHost string
MaxConnections int
MaxChannels int
ConnectionTimeout time.Duration
HeartbeatInterval time.Duration
ReconnectDelay time.Duration
MaxReconnectDelay time.Duration
ReconnectAttempts int
EnableAutoReconnect bool
LogLevel string
MaxRetryAttempts int
PrefetchCount int
RetryTTL time.Duration
}
// RabbitMQConnectionString returns the formatted RabbitMQ connection URI
func (c *AppConfig) RabbitMQConnectionString() string {
return fmt.Sprintf("amqp://%s:%s@%s:%d/%s",
c.RabbitMQ.User,
c.RabbitMQ.Password,
c.RabbitMQ.Host,
c.RabbitMQ.Port,
c.RabbitMQ.VHost,
)
}