Documentation
¶
Index ¶
- type Limiter
- func (l *Limiter) Close() error
- func (l *Limiter) Driver() driver2.Driver
- func (l *Limiter) Exec(s string, i ...interface{}) (sql.Result, error)
- func (l *Limiter) ExecContext(ctx context.Context, s string, i ...interface{}) (sql.Result, error)
- func (l *Limiter) Query(s string, i ...interface{}) (*sql.Rows, error)
- func (l *Limiter) QueryContext(ctx context.Context, s string, i ...interface{}) (*sql.Rows, error)
- func (l *Limiter) QueryRow(s string, i ...interface{}) *sql.Row
- func (l *Limiter) QueryRowContext(ctx context.Context, s string, i ...interface{}) *sql.Row
- func (l *Limiter) SQL() *sql.DB
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Limiter ¶
Limiter implements a circuit breaker pattern for database connections. It tracks consecutive errors and blocks requests for a duration when the error limit is reached. After the duration, it allows requests again.
func NewLimiter ¶
func (*Limiter) ExecContext ¶
func (*Limiter) QueryContext ¶
func (*Limiter) QueryRowContext ¶
Click to show internal directories.
Click to hide internal directories.