What is this Tower thing?


"Benjamin Fry (bluejekyll)" <bluej...@...>
 

I was reading a post on HackerNews, and came across this comment: https://news.ycombinator.com/item?id=16689756

"Just an FYI (if you want something to watch and haven't heard about it already) https://github.com/tower-rs/tower-grpc is in the works by the same folks building tokio and hyper etc."

There aren't a lot of details there, but gRPC is quickly becoming the standard interchange format at my company, so to use Rust for any services will most likely make this a requirement. I was hoping to get a better understanding of what the goals are for this Tower framework and how it relates to the Tokio and Futures ecosystem. Thanks!


Carl Lerche <ca...@...>
 

Tower is a request / response framework for Rust, built on top of Tokio (and futures). It is similar in spirit to Finagle.

The core Service trait was split out of Tokio (tokio-service). The point is, when you define a trait for the Service, you can build middleware around it. The repo has a bunch already: https://github.com/tower-rs/tower

tower-grpc is an implementation of gRPC using Tokio, h2 (http://github.com/carllerche/h2), and the Tower framework. It has codegen and generates clients & services.

Conduit uses it right now. The API will most likely change still, but if you pin the ref, it should bee OK. Also, we haven't implemented all the interop tests yet. Some are here: https://github.com/tower-rs/tower-grpc/tree/master/tower-grpc-interop.

You definitely can use it if you are willing to participate in the dev :) We have only tested the cases that Conduit currently uses.



On Tue, Mar 27, 2018 at 3:33 PM Benjamin Fry (bluejekyll) <bluej...@...> wrote:
I was reading a post on HackerNews, and came across this comment: https://news.ycombinator.com/item?id=16689756

"Just an FYI (if you want something to watch and haven't heard about it already) https://github.com/tower-rs/tower-grpc is in the works by the same folks building tokio and hyper etc."

There aren't a lot of details there, but gRPC is quickly becoming the standard interchange format at my company, so to use Rust for any services will most likely make this a requirement. I was hoping to get a better understanding of what the goals are for this Tower framework and how it relates to the Tokio and Futures ecosystem. Thanks!

--
You received this message because you are subscribed to the Google Groups "conduit-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to conduit-dev...@....
To post to this group, send email to condu...@....
To view this discussion on the web visit https://groups.google.com/d/msgid/conduit-dev/da9d642a-24ed-4cf9-a0af-f8e837f287e0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


"Benjamin Fry (bluejekyll)" <bluej...@...>
 

Excellent. We'll see if I can get time to work on something like this, but your response clarifies a lot. Thanks!