Без опису

Jan Tattermusch 4bc28087fb Merge pull request #21721 from grpc/revert-20803-grpclb_stabilization 6 роки тому
.github 220989ab42 Passing to Yash 6 роки тому
bazel eba60d8dbe Merge pull request #21527 from jtattermusch/unify_boringssl_deps2 6 роки тому
cmake e37e9aca2b set ssl.cmake to use CMakeLists.txt from boringssl-with-bazel 6 роки тому
doc 5ad654d5ab Merge pull request #19699 from curiousjazz77/patch-1 6 роки тому
etc 48cafccaba Monthly update of root pem 6 роки тому
examples 27cdec0041 buildifier format 6 роки тому
include 6466c7f166 Log an error (in dbg mode) if CQ is Shutdown before its Server(s) 6 роки тому
src 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
summerofcode 8548a932fb Update .cc and .md files 7 роки тому
templates eba60d8dbe Merge pull request #21527 from jtattermusch/unify_boringssl_deps2 6 роки тому
test 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
third_party eba60d8dbe Merge pull request #21527 from jtattermusch/unify_boringssl_deps2 6 роки тому
tools 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
.bazelrc 9e4b762203 Add suggested alias for bazelrc import location 7 роки тому
.clang-format e433b56def Support cleaning objc files 7 роки тому
.clang-tidy f8a4aae119 Fix all instances of bugprone-undefined-memory-manipulation 7 роки тому
.clang_complete 742c61294b use boringssl-with-bazel instead of third_party/boringssl 6 роки тому
.editorconfig ae66d78b8e Adding an editorconfig configuration file. 11 роки тому
.gitignore ae3c098e02 Fix the styling 6 роки тому
.gitmodules dc224cb4aa remove third_party/boringssl in favor of boringssl-with-bazel 6 роки тому
.istanbul.yml 2af89e49cb Moved gRPC node package root to repo root, made it depend on grpc.gyp 10 роки тому
.pylintrc f900eec41d Revert "Merge pull request #18727 from grpc/revert_compression" 6 роки тому
.pylintrc-examples 05b61a5199 Use Pylint to lint gRPC Python examples 7 роки тому
.pylintrc-tests 8f64f9528f Add ignore to .pylintrc-tests 7 роки тому
.rspec d7e1a10628 Bundled C core with Ruby library 10 роки тому
.travis.yml 10726f0421 Have Travis build the Sample app with frameworks too 9 роки тому
.yapfignore e52081f903 More pythons to be formatted 6 роки тому
.yardopts 33c728e1ed Adding a .yardopts file at the root so rubydocs isn't getting lost. 10 роки тому
AUTHORS a44e6d76b7 [Aio] Unary unary client call barebones implementation 6 роки тому
BUILD 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
BUILD.gn 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
BUILDING.md baa895f1b6 remove golang dependency for cmake build on windows 6 роки тому
CMakeLists.txt 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
CODE-OF-CONDUCT.md c055a79262 Fix code of conduct 8 роки тому
CONCEPTS.md de4e53162e address comments 7 роки тому
CONTRIBUTING.md 1784f2e449 Update contributing doc with copyright message info 6 роки тому
GOVERNANCE.md 525704dae2 Add GOVERNANCE.md 6 роки тому
Gemfile d7e1a10628 Bundled C core with Ruby library 10 роки тому
LICENSE fbb61ed25d fix license file 8 роки тому
MAINTAINERS.md c2135108f0 Add self to active maintainers 6 роки тому
MANIFEST.md 539f5068bd Abstract libuv implementation 7 роки тому
Makefile 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
NOTICE.txt 312ea4a187 change LICENSE, add AUTHORS 8 роки тому
OWNERS 80c69d8277 Remove unnecessary owners in client_channel tree. 6 роки тому
PYTHON-MANIFEST.in 742c61294b use boringssl-with-bazel instead of third_party/boringssl 6 роки тому
README.md 04cbb2da42 Merge pull request #20242 from jtattermusch/csharp_docs_update 6 роки тому
Rakefile 25b56ee1dd Add LDXX to Rakefile 6 роки тому
TROUBLESHOOTING.md 4eb44f3dfb Address review comments. 7 роки тому
WORKSPACE 3d876a656f Buildifier 6 роки тому
build.yaml 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
build_config.rb 81df105ac8 Deprecate gpr_get/set_allocation_functions 6 роки тому
composer.json 28c6d6bdde PHP: upgrade interop test google/auth version 7 роки тому
config.m4 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
config.w32 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
gRPC-C++.podspec 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
gRPC-Core.podspec 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
gRPC-ProtoRPC.podspec 6feae07504 Regenerate projects 6 роки тому
gRPC-RxLibrary.podspec 6feae07504 Regenerate projects 6 роки тому
gRPC.podspec 6feae07504 Regenerate projects 6 роки тому
grpc.bzl c34bef4ca4 Format all Bazel files with buildifier 6 роки тому
grpc.def db11b94f25 FullChainExperimental-01-200103 6 роки тому
grpc.gemspec 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
grpc.gyp 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
package.xml 3f3cf8b62a Revert "grpclb stabilization" 6 роки тому
requirements.bazel.txt cd848e17f2 Bump up the Cython version to 0.29.8 6 роки тому
requirements.txt cd848e17f2 Bump up the Cython version to 0.29.8 6 роки тому
setup.cfg 355287204c Make pytype check script depends on the configuration 6 роки тому
setup.py 742c61294b use boringssl-with-bazel instead of third_party/boringssl 6 роки тому

README.md

gRPC - An RPC library and framework

gRPC is a modern, open source, high-performance remote procedure call (RPC) framework that can run anywhere. gRPC enables client and server applications to communicate transparently, and simplifies the building of connected systems.

Homepage: grpc.io
Mailing List: grpc-io@googlegroups.com

To start using gRPC

To maximize usability, gRPC supports the standard method for adding dependencies to a user's chosen language (if there is one). In most languages, the gRPC runtime comes as a package available in a user's language package manager.

For instructions on how to use the language-specific gRPC runtime for a project, please refer to these documents

  • C++: follow the instructions under the src/cpp directory
  • C#: NuGet package Grpc
  • Dart: pub package grpc
  • Go: go get google.golang.org/grpc
  • Java: Use JARs from Maven Central Repository
  • Node: npm install grpc
  • Objective-C: Add gRPC-ProtoRPC dependency to podspec
  • PHP: pecl install grpc
  • Python: pip install grpcio
  • Ruby: gem install grpc
  • WebJS: follow the grpc-web instructions

Per-language quickstart guides and tutorials can be found in the documentation section on the grpc.io website. Code examples are available in the examples directory.

Precompiled bleeding-edge package builds of gRPC master branch's HEAD are uploaded daily to packages.grpc.io.

To start developing gRPC

Contributions are welcome!

Please read How to contribute which will guide you through the entire workflow of how to build the source code, how to run the tests, and how to contribute changes to the gRPC codebase. The "How to contribute" document also contains info on how the contribution process works and contains best practices for creating contributions.

Troubleshooting

Sometimes things go wrong. Please check out the Troubleshooting guide if you are experiencing issues with gRPC.

Performance

See the Performance dashboard for performance numbers of the latest released version.

Concepts

See gRPC Concepts

About This Repository

This repository contains source code for gRPC libraries implemented in multiple languages written on top of a shared C core library src/core.

Libraries in different languages may be in various states of development. We are seeking contributions for all of these libraries:

Language Source
Shared C [core library] src/core
C++ src/cpp
Ruby src/ruby
Python src/python
PHP src/php
C# (core library based) src/csharp
Objective-C src/objective-c
Language Source repo
Java grpc-java
Go grpc-go
NodeJS grpc-node
WebJS grpc-web
Dart grpc-dart
.NET (pure C# impl.) grpc-dotnet