grpc-swift
rest.li
grpc-swift | rest.li | |
---|---|---|
8 | 2 | |
1,949 | 2,436 | |
0.7% | 0.0% | |
9.3 | 8.4 | |
8 days ago | 8 days ago | |
Swift | Java | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
grpc-swift
- LinkedIn Adopts Protocol Buffers and Reduces Latency Up to 60%
-
Trouble building for ios device
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "com_github_buildbuddy_io_rules_xcodeproj", sha256 = "564381b33261ba29e3c8f505de82fc398452700b605d785ce3e4b9dd6c73b623", url = "https://github.com/buildbuddy-io/rules_xcodeproj/releases/download/0.9.0/release.tar.gz", ) http_archive( name = "cgrindel_rules_spm", sha256 = "03718eb865a100ba4449ebcbca6d97bf6ea78fa17346ce6d55532312e8bf9aa8", strip_prefix = "rules_spm-0.11.0", url = "https://github.com/cgrindel/rules_spm/archive/v0.11.0.tar.gz", ) load( "@cgrindel_rules_spm//spm:defs.bzl", "spm_pkg", "spm_repositories", ) load( "@cgrindel_rules_spm//spm:deps.bzl", "spm_rules_dependencies", ) spm_rules_dependencies() load( "@com_github_buildbuddy_io_rules_xcodeproj//xcodeproj:repositories.bzl", "xcodeproj_rules_dependencies", ) xcodeproj_rules_dependencies() load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() load( "@build_bazel_apple_support//lib:repositories.bzl", "apple_support_dependencies", ) apple_support_dependencies() spm_repositories( name = "swift_pkgs", platforms = [ ".macOS(.v10_15)", ], dependencies = [ spm_pkg( url = "https://github.com/apple/swift-log.git", exact_version = "1.4.2", products = ["Logging"], ), spm_pkg( url = "https://github.com/pointfreeco/swift-composable-architecture.git", exact_version = "0.43.0", products = ["ComposableArchitecture"], ), spm_pkg( name = "Bow", url = "https://github.com/bow-swift/bow.git", exact_version = "0.8.0", products = ["Bow", "BowEffects", "BowOptics"], ), spm_pkg( url = "https://github.com/grpc/grpc-swift.git", exact_version = "1.7.3", products = ["GRPC"], ), spm_pkg( url = "https://github.com/hyperoslo/Cache", exact_version = "6.0.0", products = ["Cache"], ), ], )
-
anyone has used grpc in iOS app?
Did you have a look at examples on grpc-swift ?
-
Considering gRPC-C++ for an iOS project
You don’t want to use the Swift version?
-
Fullstack grpc tutorials?
The Basic Tutorial or examples from the gRPG-Swift repository might be useful to you as well.
-
Application design: communication from Rust to another language
At the moment I would recommend gRPC for Swift and Rust, even though in general gRPC drives me insane, it is currently the most convenient choice. Use tonic for the Rust server-side, and grpc-swift for the client-side. I've had quite a lot of success with this in the past.
- gRPC Implementation in Swift
-
REST vs. gRPC vs. GraphQL
Swift is at least supported via Objective-C, and swift-grpc looks solid https://github.com/grpc/grpc-swift
rest.li
- FLaNK Stack 29 Jan 2024
-
LinkedIn Adopts Protocol Buffers and Reduces Latency Up to 60%
From rest.li's github page[0] -
At LinkedIn, we are focusing our efforts on advanced automation to enable a seamless, LinkedIn-wide migration from Rest.li to gRPC. gRPC will offer better performance, support for more programming languages, streaming, and a robust open source community. There is no active development at LinkedIn on new features for Rest.li. The repository will also be deprecated soon once we have migrated services to use gRPC. Refer to this blog[1] for more details on why we are moving to gRPC.
[0] - https://github.com/linkedin/rest.li
[1] - https://engineering.linkedin.com/blog/2023/linkedin-integrat...
What are some alternatives?
grpc-web - gRPC for Web Clients
Swagger - The content of swagger.io
hasura-cms - Automatically exposed GraphQL API via Hasura with schema + permissions for GraphCMS-like handling of content types
Feign - Feign makes writing java http clients easier
grpc-over-webrtc - gRPC over WebRTC
Jersey - Eclipse Jersey Project - Read our Wiki:
json-api - A specification for building JSON APIs
Dropwizard - A damn simple library for building production-ready RESTful web services.
cffi - Safe* C foreign function interface for Rust, using proc macros and marshaling types.
Retrofit - A type-safe HTTP client for Android and the JVM
graphql-code-generator - A tool for generating code based on a GraphQL schema and GraphQL operations (query/mutation/subscription), with flexible support for custom plugins.
Microserver - Microserver is a Java 8 native, zero configuration, standards based, battle hardened library to run Java Rest Microservices via a standard Java main class. Supporting pure Microservice or Micro-monolith styles.