Skip to content
This repository has been archived by the owner on Feb 3, 2022. It is now read-only.

Commit

Permalink
[#100]: feat(pre-release) v2.5.0 alpha pre-release
Browse files Browse the repository at this point in the history
feat(pre-release) `v2.5.0` alpha pre-release
  • Loading branch information
rustatian committed Sep 20, 2021
2 parents 1da624c + 868d08d commit 79bd08f
Show file tree
Hide file tree
Showing 6 changed files with 116 additions and 41 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,4 @@ rr.exe
.rr-with-temporal.yaml
.rr-sample.yaml
.rr-sample-bench-jobs.yaml
.rr-sample-bench-grpc.yaml
92 changes: 92 additions & 0 deletions .rr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1021,6 +1021,98 @@ jobs:
"test-local-4",
]

grpc:
# GRPC address to listen
#
# This option is required
listen: "tcp://localhost:9001"

# Proto file to use
#
# This option is required
proto: "proto/test/test.proto"

# GRPC TLS configuration
#
# This section is optional
tls:
# Path to the key file
#
# This option is required
key: ""

# Path to the certificate
#
# This option is required
cert: ""

# Path to the CA certificate
#
# This option is optional
root_ca: ""

# Client auth type
#
# This option is optional. Default value: no_client_certs. Possible values: request_client_cert, require_any_client_cert, verify_client_cert_if_given, require_and_verify_client_cert, no_client_certs
client_auth_type: ""

# Maximum send message size
#
# This option is optional. Default value: 50 (MB)
max_send_msg_size: 50

# Maximum receive message size
#
# This option is optional. Default value: 50 (MB)
max_recv_msg_size: 50

# MaxConnectionIdle is a duration for the amount of time after which an
# idle connection would be closed by sending a GoAway. Idleness duration is
# defined since the most recent time the number of outstanding RPCs became
# zero or the connection establishment.
#
# This option is optional. Default value: infinity.
max_connection_idle: 0s

# MaxConnectionAge is a duration for the maximum amount of time a
# connection may exist before it will be closed by sending a GoAway. A
# random jitter of +/-10% will be added to MaxConnectionAge to spread out
# connection storms.
#
# This option is optional. Default value: infinity.
max_connection_age: 0s

# MaxConnectionAgeGrace is an additive period after MaxConnectionAge after
# which the connection will be forcibly closed.
max_connection_age_grace: 0s

# MaxConnectionAgeGrace is an additive period after MaxConnectionAge after
# which the connection will be forcibly closed.
#
# This option is optional: Default value: 10
max_concurrent_streams: 10

# After a duration of this time if the server doesn't see any activity it
# pings the client to see if the transport is still alive.
# If set below 1s, a minimum value of 1s will be used instead.
#
# This option is optional. Default value: 2h
ping_time: 1s

# After having pinged for keepalive check, the server waits for a duration
# of Timeout and if no activity is seen even after that the connection is
# closed.
#
# This option is optional. Default value: 20s
timeout: 200s

# Usual workers pool configuration
pool:
num_workers: 2
max_jobs: 0
allocate_timeout: 60s
destroy_timeout: 60

## RoadRunner internal container configuration (docs: https://github.com/spiral/endure).
endure:
# How long to wait for stopping.
Expand Down
53 changes: 15 additions & 38 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@

## 💔 BC:

- 🔨 All drivers now uses new `config` key to handle local configuration. Involved plugins and drivers:
- 🔨 Some drivers now use a new `config` key to handle local configuration. Involved plugins and drivers:
- `plugins`: broadcast, kv
- `drivers`: memory, redis, memcached, boltdb.

## ATTENTION!!!, this is configuration BC, please, update your configuration:
## ATTENTION!!!, this is the configuration BC release, please, update your configuration:

### Old style:

Expand Down Expand Up @@ -38,55 +38,32 @@ kv:
kv:
memcached-rr:
driver: memcached
config: <---------------- NEW
config: <--------------- NEW
addr:
- "127.0.0.1:11211"

broadcast:
default:
driver: redis
config: <------------------ NEW
addrs:
- "127.0.0.1:6379"
```

## 👀 New:

- ✏️
- ✏️ [BETA] GRPC plugin update to v2.
- ✏️ [Roadrunner-plugins](https://github.com/spiral/roadrunner-plugins) repository. This is the new home for the roadrunner plugins with documentation, configuration samples, and common problems.

## 🩹 Fixes:

- 🐛 Fix: local and global configuration parsing

## 📦 Packages:

- 📦

## 📈 Summary:

- RR Milestone [2.5.0]()
- RR-Binary Milestone [2.5.0]()## v2.5.0 (-.-.2021)

## 💔 Internal BC:

- 🔨

## 👀 New:

- ✏️ Long-awaited, reworked `Jobs` plugin with pluggable drivers. Now you can allocate/destroy pipelines in the runtime. Drivers included in the initial release: `RabbitMQ (0-9-1)`, `SQS v2`, `beanstalk`, `memory` and local queue powered by the `boltdb`. [PR](https://github.com/spiral/roadrunner/pull/726)
- ✏️ Support for the IPv6 (`tcp|http(s)|empty [::]:port`, `tcp|http(s)|empty [::1]:port`, `tcp|http(s)|empty :// [0:0:0:0:0:0:0:1]:port`) for RPC, HTTP and other plugins. [RFC](https://datatracker.ietf.org/doc/html/rfc2732#section-2)
- ✏️ Support for the Docker images via GitHub packages.
- ✏️ Go 1.17 support for the all spiral packages.

## 🩹 Fixes:

- 🐛 Fix: fixed bug with goroutines waiting on the internal worker's container channel, [issue](https://github.com/spiral/roadrunner/issues/750).
- 🐛 Fix: RR become unresponsive when new workers failed to re-allocate, [issue](https://github.com/spiral/roadrunner/issues/772).
- 🐛 Fix: add `debug` pool config key to the `.rr.yaml` configuration [reference](https://github.com/spiral/roadrunner-binary/issues/79).

## 📦 Packages:

- 📦 Update goridge to `v3.2.1`
- 📦 Update temporal to `v1.0.9`
- 📦 Update endure to `v1.0.4`

## 📈 Summary:

- RR Milestone [2.4.0](https://github.com/spiral/roadrunner/milestone/29?closed=1)
- RR-Binary Milestone [2.4.0](https://github.com/spiral/roadrunner-binary/milestone/10?closed=1)
- 📦 Roadrunner `v2.5.0`
- 📦 Roadrunner-plugins `v2.5.0`
- 📦 Roadrunner-temporal `v1.0.10`

## v2.4.1 (13.09.2021)

Expand Down
3 changes: 2 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ require (
github.com/spiral/endure v1.0.4
github.com/spiral/errors v1.0.12
github.com/spiral/goridge/v3 v3.2.1
github.com/spiral/roadrunner-plugins/v2 v2.5.0-alpha.2
github.com/spiral/roadrunner-plugins/v2 v2.5.0-alpha.3
github.com/spiral/roadrunner/v2 v2.5.0-alpha.2
// ---------------------
github.com/stretchr/testify v1.7.0
Expand Down Expand Up @@ -47,6 +47,7 @@ require (
github.com/cespare/xxhash/v2 v2.1.2 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
github.com/emicklei/proto v1.9.1 // indirect
github.com/facebookgo/clock v0.0.0-20150410010913-600d898af40a // indirect
github.com/fasthttp/websocket v1.4.3 // indirect
github.com/fsnotify/fsnotify v1.5.1 // indirect
Expand Down
5 changes: 3 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,7 @@ github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/r
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo=
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/emicklei/proto v1.9.1 h1:MUgjFo5xlMwYv72TnF5xmmdKZ04u+dVbv6wdARv16D8=
github.com/emicklei/proto v1.9.1/go.mod h1:rn1FgRS/FANiZdD2djyH7TMA9jdRDcYQ9IEN9yvjX0A=
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
Expand Down Expand Up @@ -451,8 +452,8 @@ github.com/spiral/errors v1.0.12/go.mod h1:j5UReqxZxfkwXkI9mFY87VhEXcXmSg7kAk5Ss
github.com/spiral/goridge/v3 v3.2.1 h1:5IJofcvWYjAy+X5XevOhwf/8F0i0Bu/baPsBGiSgqzU=
github.com/spiral/goridge/v3 v3.2.1/go.mod h1:jDHXTORSxchJYCv2jG4vtZojsa+4JJyXmfdPefOpJ3c=
github.com/spiral/roadrunner-plugins/v2 v2.5.0-alpha.1/go.mod h1:EGW7qJMv+q+zBFUO0lL4MhYKI102tl3DKcKW7Ydnl4k=
github.com/spiral/roadrunner-plugins/v2 v2.5.0-alpha.2 h1:MgMI34FaLwvaHly8uRn2GZYEtqPmgmJaWDGLCjk0+E8=
github.com/spiral/roadrunner-plugins/v2 v2.5.0-alpha.2/go.mod h1:5PqFPuEx5CEBKNqYaWuYF4IWHkqk52F0IVsQbxVDf9A=
github.com/spiral/roadrunner-plugins/v2 v2.5.0-alpha.3 h1:pdBElnA07DvfViD4OAuXn3bIm/8C56AHcxEZv7ogK5E=
github.com/spiral/roadrunner-plugins/v2 v2.5.0-alpha.3/go.mod h1:5PqFPuEx5CEBKNqYaWuYF4IWHkqk52F0IVsQbxVDf9A=
github.com/spiral/roadrunner/v2 v2.5.0-alpha.1/go.mod h1:NSRo5lgCpVMNnvK+u0xmFhSP4hvrUHNsBsXHTjPXwgo=
github.com/spiral/roadrunner/v2 v2.5.0-alpha.2 h1:qSiWZYSLu8TNkvhF7p4oL5oAiA3e0VdIpgMZg5Lo/E8=
github.com/spiral/roadrunner/v2 v2.5.0-alpha.2/go.mod h1:LO0SEqbut2l3gGLQFS+g+w/bkAeKeC1Hf1a2vYtIzSw=
Expand Down
3 changes: 3 additions & 0 deletions internal/container/plugins.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"github.com/spiral/roadrunner-plugins/v2/beanstalk"
"github.com/spiral/roadrunner-plugins/v2/boltdb"
"github.com/spiral/roadrunner-plugins/v2/broadcast"
grpcPlugin "github.com/spiral/roadrunner-plugins/v2/grpc"
"github.com/spiral/roadrunner-plugins/v2/gzip"
"github.com/spiral/roadrunner-plugins/v2/headers"
httpPlugin "github.com/spiral/roadrunner-plugins/v2/http"
Expand Down Expand Up @@ -59,6 +60,8 @@ func Plugins() []interface{} { //nolint:funlen
&beanstalk.Plugin{},
// =========

&grpcPlugin.Plugin{},

// kv + ws + jobs plugin
&memory.Plugin{},

Expand Down

0 comments on commit 79bd08f

Please sign in to comment.