HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
grpc
grpc-java
Java2015–2025
grpc / grpc-java

grpc-java

The Java gRPC implementation. HTTP/2 based RPC

14Distinct people
14Mentions
0Explicit recommenders
12.1KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

The Java gRPC implementation. HTTP/2 based RPC

GitHub

Where it is used

No documented product use was verified in the last source check.

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

  • grpc/grpc · linked in 2 of the same discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 11:56:56 AM 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 year14 dated mentions

Observed mentions: 2015-02-26 20:50:58 UTC to 2025-06-28 19:38:15 UTC.

01232015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 comments20152016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025

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
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC312
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC000
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC101
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC202
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC202
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC312
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC202
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC101

What Hacker News says

14 sources
`proto_library` for building the `.bin` file from protos works great. Generating stubs/messages for "all" languages does not. Each language does not want to implement gRPC rules, the gRPC team does not want to implement rules for each language. Sort of a deadlock situation. For example: - C++: https://github.com/grpc/grpc/blob/master/bazel/cc_grpc_libra... - Python: https://github.com/grpc/grpc/blob/master/bazel/python_rules.... - ObjC: https://github.com/grpc/grpc/blob/master/bazel/objc_grpc_lib... - Java: https://github.com/grpc/grpc-java/blob/master/java_grpc_libr... - Go (different semantics than all of the other): https://github.com/bazelbuild/rules_go/blob/master/proto/def... But there's also no real cohesion within the community. The biggest effort to date has been in https://github.com/stackb/rules_proto which integrates with gaze
Read the rest
lle. tl;dr: Low alignment results in diverging implementations that are complicated to understand for newcomers. Buff's approach is much more appealing as it's a "this is the one way to do the right thing" and having it just work by detecting `proto_library` and doing all of the linting/registry stuff automagically in CI would be fantastic.
In Buf raises $93M to deprecate REST/JSON
As with so many things gRPC, they've had an open issue about it for years, but it doesn't seem to be going anywhere: https://github.com/grpc/grpc-java/issues/1886 I like gRPC overall, but it's definitely got some rough spots like this. I'm fortunate enough to be using it at a small enough scale that they don't really hinder me. My sense, based on the multitude of GitHub issues like this, is that the project itself is thrashing. They've got a relatively small core team that seems to be micro-managing all the official implementations, largely out of a desire to maintain cross-language compatibility. But the cross-language compatibility is actually rather poorer than you'd expect, because they're trying to maintain it by directly micro-managing the implementations, which turns every feature design project into a complicated n-body problem. I
Read the rest
t would be nice if they could just publish a comprehensive formal spec, and let the language implementations follow it. Then each (official) language would have only one external thing to track, instead of ten.
In Why is load balancing gRPC tricky?
Tangential, but I actually switched back to Maven after using Gradle on a fairly large project for about a year. The incremental/cached builds of Gradle were awesome, but I found writing build.gradle files to be a bit too hacky. I can achieve everything I need to with some simple configuration of an existing Maven plugin, whereas with Gradle, it always felt like I was doing something super custom and fragile. I'd still love to set up a Gradle cache server, sounds so fancy! Random piece of Gradle magic, a generated BOM: https://github.com/grpc/grpc-java/blob/master/bom/build.grad...
In You don’t need reproducible builds
We are using a similar setup. K8s, Bazel, Go, Java (Android), Swift (iOS), Typescript. Everything with gRPC. I really like Bazel because it makes working with Protobuf so much cleaner (at least in theory) and allows us to have one build system for all those languages (at least in theory). The easiest to set up was Go. Go support is already very good, including gRPC and Protobuf. The only drawback was that it breaks editor integration of some tools / linters because of the different directory layout for generated files. Vanilla Java also has good support but when you go to Android land things change. At first we had to use a custom fork of grpc-java to build for Android, but with this change https://github.com/grpc/grpc-java/pull/4289 we were able to go back to the main repo. gRPC-web was a prohibitively large dependency for our front en
Read the rest
d. After all we switched to a JSON API (using Envoy). I read that Google uses gRPC for products like gMail and since Google is so obsessed with web performance I wonder how they manage the dependency size (a few 100kb for us). There is a lot of information scattered around like a json-proto protocol (not publicly available?), which apparently should not be needed with proto3 and newer browser because performance is supposed to be similar. grpc-web uses the official protobuf/javascript package, using protobuf.js the dependency size as well as the compiled protobuf might be smaller. While building Swift and Objc for iOS was super easy with Bazel we couldn't manage to build our protobuf/grpc. There were no working rules at the time and we had no time to fix it completely which is why we are not building that part with Bazel, yet. https://github.com/pubref/rules_protobuf/issues/188 I'd appreciate any insights you have on Objc support and grpc-web. It'd be great to be able to use grpc across the whole stack.
In Show HN: An Example Microservice Back End for Kubernetes, Bazel, Go, Java, GRPC
+1. I'd been looking for a while for a production quality RPC solution, especially one with Scala bindings. Regarding the gRPC release, I've looked at the examples in the repo and only found this: https://github.com/grpc/grpc-java/tree/master/integration-te.... While it's a great showcase for the power of gRPC, having a "hello world" example with, hopefully, not a whole lot of boilerplate, would help a lot selling this to my team.
In GRPC: A high performance, open source, general RPC framework

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.