Go Micro是一个用于分布式系统开发的插件式RPC框架
Go Micro是一个用于分布式系统开发的插件式RPC框架Fix divide by zero bug in http broker
Assets
2
- Add ACME Provider interface
- Implement certmagic ACME Provider
- Add certmagic Store implementation
- Add broker service implementation
- Add ability to set grpc dial and call options
- Add etcd registry and other plugins
- Add Network.Connect rpc endpoint
- Resolve network node dns names
- Support Network.Routes querying
- Fix caching registry bugs
- Move gossip registry to go-plugins
- Add router advertise strategy
- Add Cloudflare store implementation
- Add store service implementation
Assets
2
asim released this
- Fix the quic-go checksum mismatch by updating to 0.12.1
Assets
2
asim released this
- Fix cache registry deadlocking bug
Assets
2
This is likely the last release of v1
- Use new connections for streams rather than the connection pool
- Add the registry service flags and env vars
- Fix go 1.13 tests
- Check transport in monitor health check
- Add Nodes/Graph endpoint for network rpc
- Change Nodes to Peers in the network
- Add a variety of network tests to validate
- Add network peer pruning
- Check stale registry cache when registry is down
- Add TTL/Expiry to memory registry
- Flatten advert event map in router for flap detection
- Add runtime top level interface
- Recover grpc handler failures
- Add quic transport keepalive and dial timeout
- Add link error handling
Assets
2
asim released this
- Add grpc client code application/grpc content-type
- Move client to use stream dialer
- Add network implementation
- Add dynamic plugin loading
- Add multilink usage in proxy
- Add registry implementation
- Scope mdns to .micro domain
- Support grpc server processing by default
- Add tunnel broker
Assets
2
- Fix waitgroup race condition
Assets
2
- Fix nats draining
- More verbose selector errors to return service name
- Move handler debug package
- Add a monitoring package
- Fix consul address parsing
- Fix server extraction code
- Add tunnel implementation
- Add util log level
- Add util io package to wrap transport socket
Assets
2
- Use mdns 0.2.0 release tag
Assets
2
- Move the selector into client
- Change broker.Publication to broker.Event
- Move cmd into config
- Enable default json processing in api
- Remove port from registry
- Memory broker/transport race fixes
- GRPC codec fix
- Client pool interface
- Router interface/service implementations
- Config decoding fixes
- Memory store expiration fix
- Network link/tunnel/resolver packages
- Proxy router caching
- Registry util functions
Assets
2
asim released this
- Update go mod
- Move mock data out of memory registry
- wrap the grpc codecs to support framing
- change grpc resolution to use service.method
- support full proxying via grpc
- add text codec
- move data/store
- add network interface
- add router package and implementation
- move options to config/options
- send gossip updates on register/deregister
- fix node add/del bug
- add handler wrapper back into core router
Assets
2
Final consolidation of all libraries
Assets
2
The great rewrite. The first step towards consolidation of the micro libraries into a single location.
Assets
2
- Update go mod
- Fix endpoint extraction
Assets
2
This is the 1.0.0 release of go-micro
After 4 years we've determined this is the right time to solidify what is considered version 1. In one way it is to signify the stability of the framework but also allow us to move forward with making changes for version 2.
Thanks to the community for the long term support.
Assets
2
- Remove buff check in http transport
- Change default version to latest
- Add exchange routing
- Update go modules
Assets
2
Assets
2
- Fix gossip registry
- Update go modules for rcache
Assets
2
Add server request body
Fix gossip registry bugs
Assets
2
- Move headers from X-Micro to Micro-
- Remove Register/Deregister methods from server
- Move register_interval to be internal
- Add subscriber context option
Assets
2
- Fix broken error handling - now returns error from ServeRequest router
Assets
2
Address backwards compatibility
Due to breaking changes in the past 3 weeks, I've had to address how this should be tackled in the long term. I've made the effort to make codec transition evolutionary as well as the api changes for Method() move to Endpoint(). In the process I've had to break the CallFunc signature but few likely use this. One thing which has not changed though is the registry. We are still making use of MDNS as the default.
- Codecs are now evolutionary and backwards compatible
- Service Method() is now back in the interface
Assets
2
BREAKING CHANGES
Codec
Do not move to this tag unless you're willing to incur the breaking changes.
This changes the default codec to raw protobuf and switches the content-type
application/octet-stream to use the bytes codec also. This breaking change
affects any previous use.
To explicitly be backwards compatible do the following.
In the server
// Process octet-stream as proto-rpc in the old ways
server.DefaultCodecs["application/octet-stream"] = protorpc.NewCodec
// Process json in the old way
server.DefaultCodecs["application/json"] = jsonrpc.NewCodec
// Process protobuf in the old way
server.DefaultCodecs["application/protobuf"] = protorpc.NewCodec
In the client
// In the client send proto-rpc to be forwards compatible
client.DefaultContentType = "application/proto-rpc"
There are changes to application/json and application/protobuf to use raw formats
rather than json-rpc or proto-rpc. This will likely break behaviour via the api.
The easiest way to resolve this is to reset these as well but it causes further issue.
I would advise finding a common rolling path forward e.g a common compatible content-type/codec.
This is an unfortunate change that has to be made so we can process raw formats.
Endpoint
Method now moves to endpoint. In most places we have Endpoint specified except in the client/server abstractions.
This has now moved. Most should be unaffected. But be aware of the change. Any wrappers may break.
Assets
2
- Offline inbox for http broker
- JSON/Proto/GRPC codec
- HTTP proxy from environment
Assets
2
- Public NewSubscribeOptions
- http2 broker support
- Timeout error function
- Consul Query Options
- Gossip registry
- RPC Codec renaming
Assets
2
- bug fix for socket headers
Assets
2
- add local/remote ip methods
- various linting things
- get checks on 0 ttl
- accept loop
- Fix broker locking
- Add RetryOnError as default retry policy
- Fix mock client reflection
- Support dialtimeout only above 0
- Add verbose client errors
- Allow client retries to be 0
- Reset server address on shutdown
- Set default pool size to 1
- Support reinitialising connection pool
- Set retries to 1 by default
- Return error for subscribers
- Rework of interfaces
This release introduces breaking changes in some go-micro interfaces
- Move misc to util package
- Add register ttl and interval flags
- Fix protoc-gen-micro example
- Add consul TCP check
- Atomic increment rpc stream sequence
- Support consul services without version
- Switch to stdlib context
- Add WatchOption which allows filtering by service
- Add Options method to registry
- Add Conflict error
- Only watch selected services in cache
- https support for consul registry
- subscriber deadlock bug fix
- selector top level option for service
Watchers:432 |
Star:10651 |
Fork:1089 |
创建时间: 2015-01-14 07:30:18 |
最后Commits: 3天前 |
a9e8fc6