go-chassis

a cloud native application framework for Go with rich eco-system

APACHE-2.0 License

Stars
2.7K
Committers
69

Bot releases are visible (Hide)

go-chassis - v2.0.0-alpha.1

Published by tianxiaoliang over 4 years ago

Features:

  • middlewares
  • go chassis runtime profiling
  • support huawei cloud ServiceStage environments
  • 客户端根据endpoint的sslEnabled=true自动开启tls (#796)
  • support servicecomb kie as configuration service (#798)
  • support describing response headers (#804)
  • Add header limit and server timeout (#807)

Improvement:

  • remove unused API in service discovery interface
  • rename some APIs
  • adapt new archaius API
  • remove redundant apollo option (#774)
  • 保证restful的handler最后执行,可以让之前的handler都拿到业务的执行结,这是一次框架行为机制不兼容的提交 (#777) (#778)
  • decouple circuit breaker (#791)
  • 移除契约发现interface #803

Bug fix:

  • #702
  • #767
  • #789 Load balance response time weight is not effective (#790) …
go-chassis - v1.8.2

Published by tianxiaoliang over 4 years ago

bug fix:

  • can not register schema at first registration
  • #702
  • fault-injector fix #767 (#768) …

improvment:

  • add a handler, support record access log (#759) …
  • remove unused API (#769)
  • adapt archaius (#773)
  • remove redundant apollo option (#774)
go-chassis - v1.8.1

Published by tianxiaoliang almost 5 years ago

improvment:

  • remove pkg/errors (#747)
  • remove unused env (#750)

bug fix:

  • 错误的pxx统计,misused timing api (#756)
  • 错误的注册多个实例,因此进行了重写。rewrite heartbeat (#757)
go-chassis - v1.8.0

Published by tianxiaoliang almost 5 years ago

Features:

  • 支持basic auth中间件
  • 现在go服务向servicecomb注册时,如果设置了tls相关配置项,会在ip:port后增加一个"sslEnabled=true"的标识 表示自己提供https服务(#734)
  • support open api tags (#745)

improvement:

  • 限流功能应该无非阻塞的 (#739)
  • 删除go-chassis-config依赖,将代码移植到go-archaius

Bug fix:

  • stop heartbeat service and unregistry self instances before shutting down server
go-chassis - v1.7.6

Published by tianxiaoliang almost 5 years ago

bug fix

  • can not recognize uri without port (#728)

improvment

  • optimize doc
go-chassis - v1.7.5

Published by tianxiaoliang almost 5 years ago

improvement:

  • httpclient has more convenient API
  • add chinese readme
  • log trace for env injection
  • new extension repo go-chassis-cloud and related docs
go-chassis - v1.7.4

Published by tianxiaoliang almost 5 years ago

improvements:

  • change copyright owner
  • add more docs about restful service development
  • upgrade github.com/emicklei/go-restful to 2.11 to support google custom method , an restful API style.
  • support swagger required defination for parameters in query and header

imcompatible:

  • export swagger API doc path changed from /apidocs to /apidocs.json
go-chassis - v1.7.3

Published by tianxiaoliang almost 5 years ago

improvement:

  • decouple servicecomb kie which is introduced by example (#714)
  • change license and notice to be more standardized (#716)
  • client verify target micro service's name in mutual tls (#718)
go-chassis - v1.7.2

Published by tianxiaoliang about 5 years ago

improvement:

  • add stack info when panic so we can locate it (#701)
  • upgrade archaius (#703)
  • export go runtime metrics in metrics pkg, not circuit breaker pkg

bug fix:

  • 修复:业务处理函数返回403时,invocation.Response.Status仍然是200/OK (#709)
  • should always export swagger doc (#713)
  • should support no schema address (#711)
go-chassis - v1.7.1

Published by tianxiaoliang about 5 years ago

Annoucement:

  • ServiceComb mesher is able to run as a API gateway to expose service API, see https://mesher.readthedocs.io/en/latest/configurations/edge.html. not just exposing, mesher has all the ability that go chassis has, for example you can acheive blue grean release, or use circuit breaker to protect all the upstream services

Feature:

improvement:

  • reduce mem allocation, handler chain must be stateless, so do not implement a handler which has states in chain
  • refactor route rule configuration, compatible with old one. we recommand using new rule to manage traffic and use servicecomb kie to manage configuration

bug fix:

  • return err is discovery service is diabled.
go-chassis - v1.7.0

Published by tianxiaoliang about 5 years ago

feature:

  • rest api UT support handler chain injection
  • route group can add prefix api path to apis
  • directly register function to rest route instead of function name string

improvement:

  • write structured log info, if lager.yaml is not exist

bug fix:

  • #673
  • use secure pseudo-random number to generate session id
go-chassis - v1.6.1

Published by tianxiaoliang about 5 years ago

improvement:

  • get timeout from archaius framework runtime
  • support new env for sc and cc address

bug fix:

  • should monitor address reachable, only if you service center is not behind a load balancing service
  • can not load configuration from CSE
go-chassis - v1.6.0

Published by tianxiaoliang over 5 years ago

bugfix:

  • UT solution for rest api doen't works as expectation
  • use unified address pool for service center client #650
  • return 406 if Produces not been defined but Accept exist in request headers #660

imcompatible feature:

  • github.com/rcrowley/go-metrics is removed forever, use pkg/metrics to replace, it curently only support prometheus
  • stop supporting apollo server, will integrate with serviceomb-kie in next release
go-chassis - v1.5.1

Published by tianxiaoliang over 5 years ago

improvement:

  • use crypto/rand to generate session id

bug fix:

  • log level check

NOTICE

we removed apollo support, and no longer mantain apollo plugin, will integrate with servicecomb-kie in feature release

go-chassis - v1.5.0

Published by tianxiaoliang over 5 years ago

go-chassis - v1.4.3

Published by tianxiaoliang over 5 years ago

  • compatible with old version to get source micro service name
  • upgrade archaius to support env include underscore
go-chassis - v1.4.2

Published by tianxiaoliang over 5 years ago

improvment:

  • support different protocols specify different handler chains doc
  • request body limit

bug fix:

  • bug fix: provider con not get source micro service name
go-chassis - v1.4.1

Published by tianxiaoliang over 5 years ago

modified and improvments

  • if resp is nil, should return http status
  • Add schema generation success log
  • move http handler to prom package (#607)
  • export HTTP_DEBUG=1 to enable http tracing to service center

bug fix:

  • can not use service level timeout (#598)
  • cannot limit flow between go-chassis and java-chassis
  • can not register the same prefix protocol (#608)
  • operationID should be ResourceFuncName
  • schema can not upload to service-center when first registration
go-chassis - v1.4.0

Published by tianxiaoliang over 5 years ago

Incompatible:
if you use grpc and highway, you have to change your import path to https://github.com/go-chassis/go-chassis-protocol

go chassis is growing bigger due to more plugins, you can see it through our go.mod file, so we decide to move some dependency such as grpc,highway out of this repository. sorry for the inconvenience to you current project,

please check grpc example again to know the changes https://github.com/go-chassis/go-chassis-examples/tree/master/grpc

New feature:

  • Log level can be changed in runtime.
  • rest api document gen support header definition
  • able to read query param into a struct pointer automatically

Bug fix:

  • retry did not return error
go-chassis - v1.3.0

Published by tianxiaoliang over 5 years ago

Improvements

  • close client for dead instance
  • decouple httpclient and security pkg
  • support INTERNAL_IP placeholder in microservice.yaml to report ip as hostname
  • chassis.Run now could return error

Features

  • expose API to get config center endpoint
  • support random port to start server
  • support custom server instance status
  • support custom max idle conn for http client

Fix bugs:

  • dynamic timeout config does not work

NOTICE: if you have custom Loadbalancing Strategy of go chassis before, you need to adjust your implementation to new strategy interface. https://github.com/go-chassis/go-chassis/commit/6cd393ddbb4221c9fd0e2cb64ad30af1ad818fa3

Package Rankings
Top 1.06% on Proxy.golang.org
Badges
Extracted from project README
Coverage Status Go Report Card GoDoc HitCount goproxy.cn Documentation Status