Releases: unionj-cloud/go-doudou
Releases · unionj-cloud/go-doudou
v1.0.3 Configuration Management
- Add Nacos configuration management support
- Add Apollo configuration management support
- Add configuration dynamic adjustment in runtime support for go-doudou (by adjusting environment variables prefixed with
GDD_
) from remote configuration center - Add yaml format configuration file support
- Other minor improvements
v1.0.2
Changelog
- Add
rootPath
field to go client struct for configuring path prefix when sending http requests - Add Nacos as another option for service discovery
- Add
NacosRRServiceProvider
andNacosWRRServiceProvider
for supporting load balancing of services fetched from Nacos server - Fix bug for OpenAPI 3.0 onlinedoc when
GDD_ROUTE_ROOT_PATH
is set - Replaced json marshal with msgpack for serializing node meta data, which makes meta data size smaller nearly 40% than json, but the optimization also makes v1.0.2 not compatible with old versions. Please upgrade go-doudou to the latest version if possible.
v1.0.0
Changelog
- Rearraged project structure to make developers understand this project more easily
- Disable calculating weight mechanism by default and optimize config default value
- Add cors support for /go-doudou/openapi.json endpoint for third-party code generation tool
- Update online documentation html for rendering recursive data structure such as tree
- Update online documentation html for rendering html code in doc content
- Add headers parameter to go client method signatures
- Other minor optimizations
v0.9.8
- Add *resty.Response to go client sdk return parameters inspired by github go sdk
- Add new feature to IDL: non-pointer parameters are required, pointer parameters are optional
- Support variadic functions in IDL: varargs parameters will be treated as pointer-slice type, means optional
- Add request parameters
required
validation feature - Add
BizError
struct for passing error message, business error code and http status code from service implementation layer to http handler layer - Add
GDD_MEM_LOG_DISABLE
environment variable to disable memberlist log, default is false - Some minor fixes and optimizations
v0.9.7
- Fix registry endpoint bug: when a node left and come back, the node's status is still suspect in browser.
- Add
--pre
flag togo-doudou svc push
subcommand to let developer add prefix string to docker image name. - Add a built-in endpoint
GET /go-doudou/config
to display all environment variable pairs in browser. - Add latest release version notify and upgrade feature by
go-doudou version
command
v0.9.6 Fix incorrectly leave
- Remove
mlist.Leave
fromregistry.Shutdown
method because callingleave
method will send a left message to remote peers and make its state to beStateLeft
. A node won't gossip messages toStateLeft
nodes any more. If left a cluster incorrectly by callingleave
method, the node won't have any chance to refute suspect or dead message to let remote peers know it still alive (or become alive again). - Add another package level method for leaving cluster
// Leave leaves the cluster on purpose
func Leave(timeout time.Duration) {
if mlist != nil {
_ = mlist.Leave(timeout)
logger.Info("local node left the cluster")
}
}
v0.9.5
v0.9.4 Redis GCRA Rate Limiter
- Add Redis GCRA Rate Limiter
- Refactored ratelimit package
- Support configuring rate limit by formatted string, for example: 0.0055 reqs/second with burst 20: "0.0055-S-20"
- Type of MemoryStore field keys is changed from map to *lru.Cache in order to control memory usage
v0.9.2 Log and ELK stack
Improved log feature for supporting ELK stack better
v0.9.1 Circuitbreaker/Timeout/Retry/Prometheus
- Add Circuitbreaker/Timeout/Retry support (including metrics for Prometheus)
- Add custom Prometheus service discovery for go-doudou services