11 مستودعات
Official language-specific implementations and foundational gRPC tooling.
Explore 11 awesome GitHub repositories matching part of an awesome list · Core Libraries. Refine with filters or upvote what's useful.
Guava is a Java standard library extension and utility toolkit that provides optimized data structures, concurrency tools, and core extensions. It serves as a comprehensive set of helpers for Java development, focusing on reducing repetitive boilerplate logic. The project is distinguished by its specialized implementations of immutable collections, which ensure thread safety and data consistency by preventing accidental modification. It also includes a dedicated graph data structure library for modeling and traversing networks of interconnected nodes and edges, alongside advanced collection t
Provides robust collections, caching, and common utility classes.
gRPC is a language-agnostic remote procedure call framework designed for high-performance communication between distributed services. It utilizes a structured interface definition language to generate consistent client stubs and server skeletons, enabling applications to invoke methods on remote servers as if they were local objects. By leveraging the HTTP/2 transport layer, the framework supports efficient binary serialization and multiplexed data exchange across diverse programming environments. The framework distinguishes itself through its support for flexible communication patterns, incl
Core C-based implementation for multiple languages.
Gson is a Java library designed for the serialization and deserialization of objects into structured text formats. It functions as a reflection-based data mapper, inspecting class structures at runtime to automatically convert memory-resident objects into data representations and reconstruct them back into typed language objects. The library distinguishes itself through a modular type-adapter pattern that allows for custom conversion rules for complex or nested structures. It also provides robust support for production environments by generating build-time metadata and configuration rules, wh
Fast and simple library for JSON serialization and deserialization.
grpc-go is a Go language implementation of the gRPC framework, providing a remote procedure call library for high-performance service communication. It uses the HTTP/2 protocol to execute functions on remote servers as if they were local methods and utilizes protobuf service bindings to generate type-safe client and server code. The project features a bidirectional streaming transport that supports asynchronous, full-duplex message streams between clients and servers. This networking layer allows for various communication patterns, including client-to-server and server-to-client streaming, to
Go language implementation for HTTP/2 based RPC.
gRPC Java is a library for building distributed systems that enables client and server applications to interact through remote procedure calls. It uses protocol buffers to define service interfaces and exchange structured data, providing a framework for connecting microservices across different environments. The framework utilizes an asynchronous networking foundation to manage concurrent connections and relies on a multiplexed binary protocol to facilitate efficient data exchange. It supports pluggable transport interceptors, allowing for the injection of custom logic into the request-respon
Java implementation for HTTP/2 based RPC.
gRPC-Web is a JavaScript client library that enables browser applications to call gRPC services through an HTTP proxy, using Protocol Buffers for serialization. It provides a browser-based gRPC client that supports unary, server-streaming, and bidirectional streaming RPCs, along with a code generator that produces JavaScript and TypeScript client stubs from .proto service definitions. The library includes an interceptor framework for attaching cross-cutting logic like authentication and retries to client calls, and supports setting Unix timestamp deadlines on RPCs for server-side timeout enfo
Library for enabling gRPC in web clients.
هذا المشروع عبارة عن إطار عمل gRPC لـ Node.js يُستخدم لتنفيذ استدعاءات الإجراءات البعيدة عالية الأداء. يوفر مكتبة اتصال بين العميل والخادم تستخدم HTTP/2 للبث، وتعدد الإرسال، والتأطير الثنائي، إلى جانب تنفيذ مخازن البروتوكول (protocol buffers) لتعريف البيانات المنظمة وإنشاء كعب الخدمة (service stubs). يتضمن إطار العمل سلسلة أدوات لتجميع ملفات مخازن البروتوكول إلى كائنات خاصة باللغة ويدعم إنشاء تعريفات نوع TypeScript ثابتة للتحقق من الكائنات في وقت التشغيل. تغطي المكتبة شبكات الأنظمة الموزعة واتصالات الخدمات المصغرة، بما في ذلك تشفير SSL/TLS، وضغط الرسائل، وموازنة التحميل. تدير دورة حياة الطلب من خلال المواعيد النهائية، وإعادة المحاولات، واستعادة الاتصال، وإلغاء المكالمات. تشمل الإمكانيات الإضافية بث البيانات ثنائي الاتجاه، وانعكاس الخدمة للاكتشاف البرمجي، وخدمات فحص الصحة القياسية.
Node.js implementation for gRPC services.
هذا المشروع هو تطبيق .NET لإطار عمل gRPC، يوفر نظاماً لتنفيذ الوظائف على خوادم بعيدة كما لو كانت استدعاءات محلية. يعمل كإطار عمل لاستدعاء الإجراءات البعيدة (RPC) عالي الأداء يستخدم HTTP/2 لاتصال الخدمة وبروتوكولات الاتصال الثنائية لضمان تبادل فعال للبيانات. يتضمن التطبيق وكيل gRPC-Web، الذي يعمل كطبقة ترجمة لتمكين التطبيقات القائمة على المتصفح من التواصل مع خدمات gRPC من خلال طلبات متوافقة مع الويب. كما يدعم إنشاء شبكات خدمة HTTP/2 لربط الخدمات المصغرة الموزعة بزمن انتقال منخفض. يغطي إطار العمل مجموعة واسعة من القدرات، بما في ذلك التسلسل الثنائي عبر Protobuf، وتوليد العقود المكتوبة بقوة، ودعم أنماط RPC الأحادية والمتدفقة. ويوفر ميزات استضافة خادم وإدارة عميل شاملة، إلى جانب أدوات إدارة حركة المرور مثل موازنة التحميل من جانب العميل وإعادة محاولة الاستدعاء التلقائية. يتم توفير دعم تشغيلي إضافي من خلال أمان نقل TLS، والتحكم في الوصول على مستوى الطريقة، وأدوات المراقبة بما في ذلك مراقبة صحة الخدمة وتسجيل التشخيص.
C# implementation for gRPC.
The Swift language implementation of gRPC.
Swift implementation for gRPC.
Kotlin gRPC implementation. HTTP/2 based RPC
Kotlin implementation built on the Java library.