Browse Source

Use a custom http client when connecting to aws (#1945)

Signed-off-by: Christian Burke <cr0ax64@gmail.com>
pull/1948/head
cr0ax 3 years ago committed by GitHub
parent
commit
f4392a9e6f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 11
      core/storageproviders/s3Storage.go

11
core/storageproviders/s3Storage.go

@ -3,9 +3,11 @@ package storageproviders @@ -3,9 +3,11 @@ package storageproviders
import (
"bufio"
"fmt"
"net/http"
"os"
"path/filepath"
"strings"
"time"
"github.com/owncast/owncast/core/data"
"github.com/owncast/owncast/core/playlist"
@ -176,6 +178,14 @@ func (s *S3Storage) Save(filePath string, retryCount int) (string, error) { @@ -176,6 +178,14 @@ func (s *S3Storage) Save(filePath string, retryCount int) (string, error) {
}
func (s *S3Storage) connectAWS() *session.Session {
t := http.DefaultTransport.(*http.Transport).Clone()
t.MaxIdleConnsPerHost = 100
httpClient := &http.Client{
Timeout: 10 * time.Second,
Transport: t,
}
creds := credentials.NewStaticCredentials(s.s3AccessKey, s.s3Secret, "")
_, err := creds.Get()
if err != nil {
@ -184,6 +194,7 @@ func (s *S3Storage) connectAWS() *session.Session { @@ -184,6 +194,7 @@ func (s *S3Storage) connectAWS() *session.Session {
sess, err := session.NewSession(
&aws.Config{
HTTPClient: httpClient,
Region: aws.String(s.s3Region),
Credentials: creds,
Endpoint: aws.String(s.s3Endpoint),

Loading…
Cancel
Save