HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
uber
tchannel
Thrift2015–2016
uber / tchannel · Archived

tchannel

network multiplexing and framing protocol for RPC

2Distinct people
2Mentions
0Explicit recommenders
1.2KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

network multiplexing and framing protocol for RPC

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month2 dated mentions

Observed mentions: 2015-10-22 01:08:29 UTC to 2016-12-27 17:30:35 UTC.

012015-10-01 00:00:00 UTC to 2015-11-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsOct 20152015-11-01 00:00:00 UTC to 2015-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2015-12-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-01-01 00:00:00 UTC to 2016-02-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-02-01 00:00:00 UTC to 2016-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-03-01 00:00:00 UTC to 2016-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-04-01 00:00:00 UTC to 2016-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-05-01 00:00:00 UTC to 2016-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsMay 20162016-06-01 00:00:00 UTC to 2016-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-07-01 00:00:00 UTC to 2016-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-08-01 00:00:00 UTC to 2016-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-09-01 00:00:00 UTC to 2016-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-10-01 00:00:00 UTC to 2016-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-11-01 00:00:00 UTC to 2016-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-12-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsDec 2016

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Oct 20152015-10-01 00:00:00 UTC2015-11-01 00:00:00 UTC101
Nov 20152015-11-01 00:00:00 UTC2015-12-01 00:00:00 UTC000
Dec 20152015-12-01 00:00:00 UTC2016-01-01 00:00:00 UTC000
Jan 20162016-01-01 00:00:00 UTC2016-02-01 00:00:00 UTC000
Feb 20162016-02-01 00:00:00 UTC2016-03-01 00:00:00 UTC000
Mar 20162016-03-01 00:00:00 UTC2016-04-01 00:00:00 UTC000
Apr 20162016-04-01 00:00:00 UTC2016-05-01 00:00:00 UTC000
May 20162016-05-01 00:00:00 UTC2016-06-01 00:00:00 UTC000
Jun 20162016-06-01 00:00:00 UTC2016-07-01 00:00:00 UTC000
Jul 20162016-07-01 00:00:00 UTC2016-08-01 00:00:00 UTC000
Aug 20162016-08-01 00:00:00 UTC2016-09-01 00:00:00 UTC000
Sep 20162016-09-01 00:00:00 UTC2016-10-01 00:00:00 UTC000
Oct 20162016-10-01 00:00:00 UTC2016-11-01 00:00:00 UTC000
Nov 20162016-11-01 00:00:00 UTC2016-12-01 00:00:00 UTC000
Dec 20162016-12-01 00:00:00 UTC2017-01-01 00:00:00 UTC110

What Hacker News says

2 sources
IDLs are awesomely useful and you can build all sorts of things on that abstraction, especially if you have a parser that produces a standard AST (I wrote a PegJS parser that takes the Thrift IDLs and creates a plain old javascript object AST that can be used for things like: (1) writing dynamic serializers/deserializers for binary data (uber/thriftrw), (2) validators (not yet written, but will both lint as well as check for backwards compatibility when IDLs are updated); (3) bash autocompletion for an RPC api via a curl-like command (soon to land in uber/tcurl)) At Uber, we started with Apache Thrift, but found many things about it limited and broken with dubious code quality for some languages. Furthermore we had more ambitious ideas like application layer sharding (uber/ringpop) and service discovery and routing (uber/hyperbahn). We're
Read the rest
still using the thrift protocols (uber/thriftrw) with our rpc library (uber/tchannel), but could have built on top of another IDL format like protobufs (v3). For those curious about the RPC interface, just check out: https://tchannel.readthedocs.org/en/latest/ The interface supports all sorts of things This is all over TCP right now and designed for performance and service to service communication, but there is nothing preventing the addition of HTTP (via XHR or WebSockets) as a transport for allowing web apps to speak with tchannel services. I contributed to the Apache Thrift implementation that allows this (https://github.com/apache/thrift/blob/master/lib/nodejs/lib/...). The implementation for tchannel would be similar, but rely on XHR/WS in the browser and the `http` module instead of the `net` module in NodeJS on the server. It's trivial to write a proxy frontend that relays TJSONProtocol on the frontend to a Thrift binary protocol like TBinaryProtocol or TCompactProtocol. https://github.com/uber/hyperbahn https://github.com/uber/tchannel https://github.com/uber/ringpop-node https://github.com/uber/ringpop-go https://github.com/uber/idl https://github.com/uber/tcurl https://github.com/uber/tcap etc.
In Show HN: WebRPC – a simple alternative to REST and SOAP

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.