otto 2 years ago
parent
commit
88788d514c
  1. 2
      README.md
  2. 8
      discver/dial.go
  3. 9
      discver/pool/pool.go
  4. 2
      etcd_test.go

2
README.md

@ -1,5 +1,5 @@
# go-etcd
Etcd封装基础包, 包含服务注册和客户端
Etcd封装基础包, 包含服务注册和客户端(之后有时间重新封装)
### 客户端
```go

8
discver/pool.go → discver/dial.go

@ -2,7 +2,7 @@ package discver
import (
"git.gz.internal.jumaiyx.cn/jm/jmproto/conf"
"git.gz.internal.jumaiyx.cn/pkg/go-etcd/pool"
"git.gz.internal.jumaiyx.cn/pkg/go-etcd/discver/pool"
"github.com/go-kratos/kratos/v2/log"
"time"
)
@ -27,7 +27,7 @@ func NewEtcd(c *RegistryConfig) *RegistryConfig {
return c
}
func (dis *RegistryConfig) Dial() (*pool.GenericPool, error) {
func (dis *RegistryConfig) Pool() (*pool.GenericPool, error) {
genericPool, err := pool.NewGenericPool(dis.MinOpen, dis.MaxOpen, dis.MaxLifetime, func() (pool.Poolable, error) {
confRegistry, err := NewRegistry(dis.Conf)
if err != nil {
@ -41,3 +41,7 @@ func (dis *RegistryConfig) Dial() (*pool.GenericPool, error) {
}
return genericPool, err
}
//func (p *pool.GenericPool) getServer() {
//
//}

9
pool/pool.go → discver/pool/pool.go

@ -4,6 +4,7 @@ import (
"context"
"errors"
"fmt"
"github.com/go-kratos/kratos/v2/log"
"google.golang.org/grpc"
"sync"
"time"
@ -84,6 +85,14 @@ func (p *GenericPool) Get() (Poolable, error) {
}
}
func (p *GenericPool) GetServer(ctx context.Context, serverName string) (*grpc.ClientConn, error) {
poolable, err := p.Get()
if err != nil {
log.Error(err)
}
return poolable.GrpcInsecure(ctx, serverName)
}
func (p *GenericPool) getOrCreate() (Poolable, error) {
select {
case closer := <-p.pool:

2
etcd_test.go

@ -32,7 +32,7 @@ func TestNewEtcd(t *testing.T) {
Host: "127.0.0.1:20000",
},
MinOpen: 10,
}).Dial()
}).Pool()
if err != nil {
log.Error(err)
}

Loading…
Cancel
Save