Skip to content

Releases: Netflix/ribbon

2.0-RC1

09 Jul 19:25
Compare
Choose a tag to compare

This is the first release of Ribbon 2. This releases have the following major changes compared with 0.3.x releases:

  • New module ribbon added as the result of API design discussion of #99
  • Added new ribbon-transport module to have asynchronous and multiple protocol (HTTP, TCP and UDP) clients built on top of RxNetty with load balancing functionality
  • IClientConfig and CommonClientConfigKey API changes
  • Added builders for IClientConfig and ILoadBalancer (see LoadBalancerBuilder)
  • Removed httpasyncclient module
  • Deprecated the usage of RestClient in favor of new APIs in ribbon module and ribbon-transport module
  • Added new examples in examples module

Known issues

  • Serialization support for ribbon-transport and ribbon module is still work in progress and will be added in RxNetty. Until then, for users of ribbon module, the return type from the template has to be Netty's ByteBuf otherwise an error will be raised.
  • If a blocking API is used on RibbonRequest, meaning queue() or execute(), the caller must explicitly release the ByteBuf. Otherwise it will cause resource leak. for example:
    RibbonRequest<ByteBuf> request = ...;
    ByteBuf result = request.execute();
    try {
        // do something with the ByteBuf
    } finally {
        result.release();
    }