https://github.com/Netflix/ribbon/tree/master/ribbon
We already support ribbon 2.0.
Ribbon 2.0's supports a fluent builder style and and annotation declarative approach ala Feign.
Should we deprecate feign? It would simplify the number of netflix packages we support.
Wouldn't need #441 since we already have ribbon customization.
@adriancole @mstine @dsyer
Maybe it's retrofit 2 instead: https://speakerdeck.com/jakewharton/simple-http-with-retrofit-2-droidcon-nyc-2015
Unknown
Arg, retrofit doesn't have pluggable clients, only okhttp: https://github.com/square/retrofit/blob/master/retrofit/src/main/java/retrofit/Retrofit.java#L101
@spencergibb not sure it if helps, but okhttp can now implement apache's client:
https://github.com/square/okhttp/blob/master/okhttp-apache/src/main/java/com/squareup/okhttp/apache/OkApacheClient.java
@adriancole is this worth keeping open for discussion? Or should we close it and track what the framework async client might look like?
close
@spencergibb What about original question:
Ribbon 2.0 Http client vs Feign?
When reading https://github.com/Netflix/ribbon/tree/master/ribbon it true that Ribbon has a similar high-level abstraction as Feign. So what are the advantages to use Feign over Ribbon (directly)?
The Netflix guys mentioned during their presentation (http://www.infoq.com/presentations/spring-cloud-netflix) that Feign is not popular and not really maintained at Netflix.
Fast forwards to 33:05
@kakawait @aivans we're continuing with feign. Pivotal employs the maintainer of Feign @adriancole, so it's not going away anytime soon. We like feign because of it's abstraction away from an implementation like Ribbon. There may be work in spring-framework 5 that might cause us to come back to this.
Thanks Spencer
@spencergibb pretty awesome. We are starting migrating some part of monolitics app to microservices on top of Netflix OSS and Spring cloud and we are using Feign because we found it abstraction really pleasant and fit ours needs. So I can continue to use it if pivotal still support Feign.
Popular is relative to something else.. like ex feign is less popular than
a lot of things, probably most things. Its release at all was an accident
of deployment of denominator. When at netflix, I'm pretty sure I never
presented feign or blogged about it. It was mostly selfish, as I didn't
want 5 issues/day on how to use eclipse.
I'm grateful to Netflix for their years of support of feign: that support
wasn't advertising or curating internal use. Netflix support has been
hiring awesome people. Ex @rspieldenner and @diannemarsh who help keep
Feign's build/release going without asking for anything in return.
Through the years, I've been surprised at interest. Ex. I found out from
@joshlong at a no-fluff conference one night that it was actually in
spring! Before, I thought feign in spring was a mad-scientist experiment
from @spencergibb and @dsyer.
Long story long is.. I don't think zombie projects are helpful, if I
thought feign was unnaturally alive, I'd probably help kill it. Feign's
life has never been defined by statements from Netflix, and that'd be sort
of un-netflix anyway. As long as people still want it, I'm sane
(relatively), and the project remains simple, I'm happy to continue to help
with Feign.
@adriancole we hope you stay sane(ish) working at pivotal! Thanks for the great work.
Thank you @adriancole for everything! I think yes Feign is certainly less popular than Hystrix, Eureka or other Netflix OSS project. But with new mouvances for microservices and even more thanks to @joshlong that offering us some live demo of Spring Cloud Netflix including Feign. Feign can become more popular, but it just speculations...
I'm happy to use Feign at the moment! I will continue to use it so.
Just one point to validate is performance comparaison between pure Ribbon and Feign. Feign may slower due to abstraction but if just few nanoseconds it's ok :)
subtle pull request changed the nature of retrofit interop. So long as the http client (aka call factory) uses okhttp/okio types, it can be swapped out now https://github.com/square/retrofit/pull/1394
@adriancole that's nice. I'll play with it and see what it might look like.
hurray i love that this is real (and working w/ Sleuth!)
:+1:
thanks @adriancole for sanely and super not-selfishly developing Feign. it's the gift that keeps on giving!
& thanks @kakawait - glad you dig the demos and i hope you do demos for people you care about too! :-)
2 years later Feign is discontinued and Ribbon is in maintenance mode. What next?
@piotrgwiazda goo.gl/z1ZFoD
@piotrgwiazda Feign discontinued? Where do you get that from?
Feign is not discontinued. It is now openfeign and run by community members
Most helpful comment
Feign is not discontinued. It is now openfeign and run by community members