allocations improvements and tunnel fixes (#1248)

* reduce allocations in tunnel code

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* another allocation fix

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* allocate maps with len if it known

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* allocate key for send once

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
Василий Толстов 2020-02-24 17:15:20 +03:00
parent f727b75b6f
commit 78d2884ced
2 changed files with 2 additions and 2 deletions

View File

@ -140,7 +140,7 @@ func (g *grpcCodec) ReadHeader(m *codec.Message, mt codec.MessageType) error {
m = new(codec.Message) m = new(codec.Message)
} }
if m.Header == nil { if m.Header == nil {
m.Header = make(map[string]string) m.Header = make(map[string]string, len(md))
} }
for k, v := range md { for k, v := range md {
m.Header[k] = strings.Join(v, ",") m.Header[k] = strings.Join(v, ",")

View File

@ -188,7 +188,7 @@ func (g *grpcServer) createSubHandler(sb *subscriber, opts server.Options) broke
return err return err
} }
hdr := make(map[string]string) hdr := make(map[string]string, len(msg.Header))
for k, v := range msg.Header { for k, v := range msg.Header {
hdr[k] = v hdr[k] = v
} }