Commit graph

524 commits

Author SHA1 Message Date
Evgeniy Kulikov
75113f8195
Refactoring connection pool
- replace RWMutex with Mutex
- conns now contains `map[int32][]*node`
- add index field to node struct
- add usedAt field to node struct
- `New` don't store current connection twice
- writes `used_at` of connection into the log
- we check that conn is alive and, that connection used not a long time ago, otherwise, close it
- `getConnection` reset current connection and index on errors
-  `IsAlive` now is a method of `Pool`
-  `IsAlive` creates context with timeout for every health check call of node
2020-02-19 13:55:42 +03:00
Evgeniy Kulikov
65a2da6995
Add constants with default values
- default values constants
- add conn_ttl `GW_CONN_TTL=duration` (gRPC connection time to live)
2020-02-19 13:47:21 +03:00
Evgeniy Kulikov
667a98d22f
Ignore log files 2020-02-19 13:45:09 +03:00
Evgeniy Kulikov
c4963f45bd
use timer instead of ticker 2020-02-14 14:35:35 +03:00
Evgeniy Kulikov
468cf49126
don't panic on http.ErrServerClosed 2020-02-14 13:12:36 +03:00
Evgeniy Kulikov
307f008dac
log elapsed time when could not receive object 2020-02-14 13:12:36 +03:00
Evgeniy Kulikov
01e152774f
refactor reBalance and isAlive 2020-02-14 13:12:36 +03:00
Evgeniy Kulikov
17768b5bfe
set ttl to HealthRequest 2020-02-14 13:12:29 +03:00
Evgeniy Kulikov
fbfab8cae7
Add state.HealthCheck to isActive 2020-02-13 17:33:12 +03:00
Evgeniy Kulikov
b8a6af43aa
update go.sum 2020-02-07 18:06:19 +03:00
Evgeniy Kulikov
f14401c0c0
Update dependencies
- github.com/labstack/echo/v4 `v4.1.11 => v4.1.14`
- github.com/nspcc-dev/neofs-api `v0.2.14 => v0.3.1`
- github.com/pkg/errors `v0.8.1 => v0.9.1`
- github.com/prometheus/client_golang `v1.2.1 => v1.4.1`
- github.com/spf13/viper `v1.6.1 => v1.6.2`
- google.golang.org/grpc `v1.25.1 => v1.27.1`
2020-02-07 18:04:02 +03:00
Evgeniy Kulikov
1542a01924
Use path.Base because hdr.Value can be something like /path/to/filename.ext 2020-02-04 14:02:29 +03:00
Evgeniy Kulikov
53244fcaf3
Use object.FilenameHeader instead custom constant 2020-02-04 14:00:45 +03:00
Evgeniy Kulikov
461a4acea0
Update to NeoFS API v0.2.14 2020-02-04 14:00:06 +03:00
Evgeniy Kulikov
590444459d
Migrate to NeoFS API 2020-02-04 13:35:25 +03:00
alexvanin
d807ede7c7 dep: Update neofs-proto to v0.2.11
Object get and head requests have new `raw` field now.
2020-01-22 17:24:15 +03:00
Evgeniy Kulikov
746946290c
NSPCC-762 Connection pool
- implement connection pool
- wait until container creates
- refactoring gw service
- add config option to enable prometheus and pprof
- update neofs-proto to v0.2.8
2019-12-21 13:26:14 +03:00
Evgeniy Kulikov
39279e4c5f
NSPCC-786 Rename gen => generated 2019-12-17 18:34:04 +03:00
Evgeniy Kulikov
798b9c9646
docker: update dockerfile and make command 2019-12-13 19:18:45 +03:00
Evgeniy Kulikov
97d1a99f58
NSPCC-493 Separate repository for NeoFS GW
- Update dependencies
- Update README (configuration: flags section)
- Add gRPC logger and flag to enable gRPC connection debugging
- Refactored settings (add flags, use defaults instead of yaml representation)
2019-12-13 19:09:14 +03:00
Evgeniy Kulikov
2bebf38a18
update go.sum 2019-11-19 16:23:59 +03:00
Evgeniy Kulikov
3f8e696433
update proto / crypto / makefile 2019-11-18 19:59:59 +03:00
Evgeniy Kulikov
99ed41b905
NSPCC-587 Add License and Readme 2019-11-07 20:29:29 +03:00
Evgeniy Kulikov
b4ac08d341
initial 2019-11-06 15:33:46 +03:00