首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏个人随笔

    GRPC-JAVA

    参考资料: https://github.com/grpc/grpc-java https://www.cnblogs.com/gutousu/p/9951956.html 它可以一次性的在一个 .proto </pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:${grpc.version}:exe:${os.detected.classifier -- 生成的grpc-Java文件目录 --> <outputDirectory>${project.build.directory}/generated-sources ; import io.grpc.stub.StreamObserver; import java_test.TestGrpc; import java_test.TestServiceGrpc; import ; import io.grpc.ManagedChannelBuilder; import io.swagger.annotations.Api; import java_test.TestGrpc;

    1.3K30发布于 2020-03-08
  • 来自专栏互联网研发闲思录

    java 使用grpc步骤

    1、配置grpc maven依赖 <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-netty </dependency> <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-stub protocArtifact>com.google.protobuf:protoc:3.0.2:exe:${os.detected.classifier}</protocArtifact> <pluginId>grpc-java </pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.2.0:exe:${os.detected.classifier}< /grpc-javahttps://github.com/google/protobuf/tree/master/examples

    2K50发布于 2018-01-03
  • 来自专栏菠萝上市没有

    Java GRPC 双向通信

    背景使用grpc的stream流模式,让服务器具备推送消息的能力。 CommandStreamServiceGrpc.CommandStreamServiceImplBase { // 用来向客户端推送消息 private StreamObserver sendCmdObServer; public io.grpc.stub.StreamObserver <com.zdpower.grpc.Hello.CommandMessage> commandDispatch( io.grpc.stub.StreamObserver<com.zdpower.grpc.Hello.CommandMessage

    1.5K00编辑于 2022-06-21
  • 来自专栏用户1337634的专栏

    grpc-java快速体验

    公司内部有的服务提供的是grpc协议的接口,所以使用demo快速了解一下 快速体验 下载源码 $ git clone -b v1.38.0 https://github.com/grpc/grpc-java 编译 $ cd grpc-java/examples $ . e.getStatus()); return; } logger.info("Greeting: " + response.getMessage()); } ps: 后面还可以再会增加从0开始完成一个grpc 调用 参考 grpc-Quick start

    64430发布于 2021-07-01
  • 来自专栏python3

    grpc python 和Java实现

    Grpc实战教程: 说一下目的:实现Python变成的服务端,Java作为客户端,实现二者的通信,实现的功能:传递过来的字符串全部转换为大写 一、安装(Java和Python) 1、  Python安装 )      安装 python grpc 的 protobuf 编译工具,执行:pipinstall grpcio-tools 2、  Java安装grpc 3、  参考:https://github.com /grpc/grpc-java,添加对应的jar包和插件,我的测试是在idea下maven工程下进行的,只需在pom文件中,添加对应的依赖和插件即可。 将建立的data.proto文件到proto文件夹中,然后打开pom文件,按照https://github.com/grpc/grpc-java,添加对应的jar包和插件即可。 此时在target/generated-sources/protobuf下会生成grpc-java文件,生成的服务端代码就在此文件中,将生成的类剪切(是剪切,当然复制完成删除也可以,避免报错)拷贝工程中对应的

    1.7K20发布于 2020-01-08
  • 来自专栏岚的工作随笔

    gRPC-Java 的快速实践

    简介将 RPC 比作普通话,那么gRPC就是谷歌的方言。gRPC 是由 Google 开发并且开源的一款高性能、跨语言的 RPC 框架,支持多种语言,Java 就包含其中。 克隆仓库git clone -b v1.69.0 --depth 1 https://github.com/grpc/grpc-java这里克隆的是全量包,我们只需要example目录下的cd examples io.grpc.examples.helloworld.HelloWorldServer 是要执行的 Java 类的完全限定名。%* 表示传递给批处理脚本的所有参数。 根据信息,找到 src/main/java/io/grpc/examples/helloworld/HelloWorldServer而在客户端上,逻辑更为简单。 = true; // 生成多个Java文件option java_package = "io.grpc.examples.helloworld"; // 设置生成的Java文件的包名option java_outer_classname

    82000编辑于 2025-01-03
  • 来自专栏开源 & 技术分享

    GRPC: 实现 gRPC 代理

    [up-c7bba324e0c2cbccc0daaf5aa92852efd6d.png] 介绍 本文介绍如何通过 rk-boot 快速搭建 gRPC 代理。 什么是 gRPC 代理? gRPC 代理会接受 gRPC 请求,并根据用户策略转发至其他 gRPC 服务。应用场景不多,比如根据环境参数,把请求转发到不同的 gRPC 服务。 gRPC 代理有一个限制。 1.创建 proxy/boot.yaml & proxy/main.go 监听 8080 端口,proxy 服务没有实现任何 gRPC 方法,如果 gRPC 请求的 Metadata 中包含 domain /rk-grpc/interceptor/log/zap" "go.uber.org/zap" "google.golang.org/grpc" "google.golang.org/grpc/metadata

    2.9K40编辑于 2021-12-13
  • 来自专栏CSDN迁移

    gRPCgRPC-Web

    gRPC 一、gRPC 二、proto-buf 三、gRPC-Web 一、gRPC 官方指南 由 google 开发,是一款语言中立、平台中立、开源的远程过程调用(RPC)系统。 所以,你可以很容易地用 Java 创建一个 gRPC 服务端,用 Go、Python、Ruby 来创建客户端。 而是在例子客户端和服务端里,我们 require gRPC 库,然后用它的 load() 方法: var grpc = require('grpc'); var hello_proto = grpc.load 与 REST 的区别 gRPC:一个客户端应用程序通过 Protocol Buffers 与一个 gRPC 后端服务器通信,然后这个服务器也通过 Protocol Buffers 与其他的 gRPC gRPC-Web是一个标准化协议,它解决了这个问题,可以在浏览器中使用gRPC

    3.4K11编辑于 2022-10-25
  • 来自专栏ccf19881030的博客

    gRPC

    gRPC 本文转载自http://www.topgoer.com/ - gRPC 安装 gRPC简介 Protobuf⇢Go转换 Protobuf语法 小案例 OpenSSL

    83420发布于 2020-11-24
  • 来自专栏从入门到放弃

    protobuf太好用,java之父叫我改用grpc

    的Service类,所以需要借助protoc-gen-grpc-java插件,在cmomons模块的pom.xml添加插件<dependencies> <! </pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.54.1:exe:${os.detected.classifier}< 的Service类,所以需要借助protoc-gen-grpc-java插件,在cmomons模块的pom.xml添加插件<dependencies> <! </pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.54.1:exe:${os.detected.classifier}< </pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.54.1:exe:${os.detected.classifier}<

    1.1K30编辑于 2023-04-24
  • 来自专栏实战docker

    javagRPC实战之五:双向流

    本篇概览 本文是《javagRPC实战》系列的第五篇,目标是掌握双向流类型的服务,即请求参数是流的形式,响应的内容也是流的形式; 先来看看官方资料对双向流式RPC的介绍:是双方使用读写流去发送一个消息序列 接口,再通过proto生成java代码 开发服务端应用 开发客户端应用 验证 源码下载 本篇实战中的完整源码可在GitHub下载到,地址和链接信息如下表所示(https://github.com/zq2599 有关的配置,这里只需要配置服务端口号 grpc: server: port: 9901 启动类DoubleStreamServerSideApplication.java的代码就不贴了,普通的 springboot启动类而已; 重点是提供grpc服务的GrpcServerService.java,咱们要做的就是给上层框架返回一个匿名类,至于里面的onNext、onCompleted方法何时被调用是上层框架决定的 ; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; @Service @Slf4j

    1.9K00发布于 2021-10-27
  • 来自专栏轻量级微服务

    微服务跨语言 gRPCJava & Python

    Java Server & Client 模块说明: samples-interface 定义了不同的接口,接口的定义中指明了序列化方式,具体包含 Sofa-Hessian、ProtoStuff、FastJSON /facade/service/UserServiceByFastJSON.py 对应 Java 模块 samples-facade 中定义的接口 UserServiceByFastJSON client.py /service.proto Python Server & Java Client 跨语言框架级对接中,使用了通用的 service.proto,所以服务端使用反射机制来将请求体映射到对应的具体实现方法 Client 与 Java Server 对接 1、启动 Java Server,运行 samples-server 的 Application 2、运行 client.py python client.py 之 Java & NodeJS

    4.7K10发布于 2018-10-11
  • 来自专栏FunTester

    Grpc服务开发和接口测试初探【Java

    com.google.protobuf:protoc:3.17.2:exe:${os.detected.classifier}</protocArtifact> <pluginId>grpc-java </pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.39.0:exe:${os.detected.classifier 今天分享一下Java的版本,所以我先新建了一个Java工程。然后在main目录下新建proto目录,然后在proto目录下新建一个Hello.proto的文件。 这样我们就得到了SDK的Java包:[INFO] Building jar: /Users/oker/IdeaProjects/fun_grpc/target/fun_grpc-1.0-SNAPSHOT.jar 服务的启动入口类: package com.funtester.grpc; import io.grpc.Server; import io.grpc.ServerBuilder; import java.io.IOException

    97520编辑于 2022-05-17
  • 来自专栏实战docker

    javagRPC实战之五:双向流

    javagRPC实战》全系列链接 用proto生成代码 服务发布和调用 服务端流 客户端流 双向流 客户端动态获取服务端地址 基于eureka的注册发现 本篇概览 本文是《javagRPC实战》系列的第五篇 接口,再通过proto生成java代码 开发服务端应用 开发客户端应用 验证 源码下载 本篇实战中的完整源码可在GitHub下载到,地址和链接信息如下表所示(https://github.com/zq2599 有关的配置,这里只需要配置服务端口号 grpc: server: port: 9901 启动类DoubleStreamServerSideApplication.java的代码就不贴了,普通的 springboot启动类而已; 重点是提供grpc服务的GrpcServerService.java,咱们要做的就是给上层框架返回一个匿名类,至于里面的onNext、onCompleted方法何时被调用是上层框架决定的 ; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; @Service @Slf4j

    1.4K31编辑于 2021-12-07
  • 来自专栏grpc

    深入了解grpc(一):grpc介绍

    因此,诞生了gRPC,一种用于构建分布式应用程序和微服务的现代进程间通信方式。《深入了解grpc》系列文章从以下几个方面来讲解grpc技术:grpc介绍。 包括什么是grpc、进程间通信的演进、grpc的优缺点、grpc与其他协议的对比。grpc原理。包括框架架构、通信流程、编解码以及支持的四种通信方式。grpc-go实现细节。 本篇文章讲述第一个方面,即“grpc介绍”。后续会用4-5篇文章讲述另外两方面。什么是gRPCgRPC是一种进程间通信技术。 gRPC的优势gRPC带来的优势是越来越多地公司采用 gRPC 的关键。这些优势包括:实现的进程间通信方式高效。 gRPC的缺点与任何技术一样,gRPC 也有一些缺点:它可能不适合面向外部的服务。

    10.1K20编辑于 2022-09-12
  • 来自专栏加菲的博客

    gRPC】 在.Net core中使用gRPC

    1.gRPC是什么? gRPC的原生支持。 我们可以创建一个gRPC服务端项目。这个模板已经引入了Grpc.AspNetCore包。你可以在模板中搜到的。 6.配置无TLS的gRPC 6.1 服务端配置 gRPC只支持HTTP/2。 7.配置TLS的gRPC 毫无疑问,微服务场景之外的gRPC服务还是需要TLS的。

    1.2K20编辑于 2022-06-23
  • 来自专栏吴亲强的深夜食堂

    gRPC-shop:什么是 gRPC(一)

    gRPC-shop:什么是 gRPC(一) 在正式写grpc-shop之前,我们需要先花几篇文章介绍一些基础概念。 在介绍gRPC之前我们先了解下什么是RPC。 什么是 RPC? RPC 和 gRPC 有什么关系? gRPC是由 google开发的一个高性能、通用的开源RPC框架,主要面向移动应用开发且基于HTTP/2协议标准而设计,同时支持大多数流行的编程语言。 gRPC 是如何进行远程调用的? 官网有一张图: 从上图和文档中可以看出,用gRPC来进行远程调用服务,客户端(client) 仅仅需要gRPC Stub(为啥叫存根?)  ,通过Proto Request向gRPC Server发起服务调用,然后 gRPC Server通过Proto Response(s)将调用结果返回给调用的client。 至于上面这段逻辑gRPC里面做了啥,有哪些调用方式,介绍完pb再写。 总结 第一篇文章主要介绍了RPC是什么,以及一些gRPC的基础概念。

    87941发布于 2021-08-25
  • 来自专栏code人生

    Why gRPC ?

    gRPCgRPC Remote Procedure Call)是由 Google 开发的开源 RPC 框架,它基于 HTTP/2 标准,使用 Protocol Buffers 作为接口定义语言(IDL gRPC 提供了一种高效、跨语言、跨平台的远程过程调用(RPC)解决方案,被广泛应用于构建分布式系统和微服务架构。以下是选择使用 gRPC 的一些主要原因:1. 跨语言和跨平台gRPC 的接口定义语言(IDL)使用 Protocol Buffers,支持多种编程语言,如 Java、Go、C++、Python、Ruby 等,使得不同语言的服务能够无缝地进行通信。 gRPC 不仅可以在不同的编程语言中使用,还可以在不同的操作系统上运行,包括 Linux、Windows、macOS 等。3. 自动化工具支持gRPC 提供了丰富的工具,如 Protocol Buffers 编译器、gRPC 插件等,使得接口的生成和维护更加方便。支持使用工具生成客户端和服务端的代码,避免手动编写重复性的代码。

    61510编辑于 2023-11-25
  • 来自专栏golang云原生new

    gRPC介绍

    gRPC介绍 gRPC是什么? RPC和RESTful的区别是什么? gRPC的特性是什么? gRPC的数据交互模式是怎么样的? 数据的序列化方式 - protobuf 简单介绍protobuf的结构定义包含的3个关键字 一个DEMO gRPC gRPC介绍 gRPC是什么? RPC和RESTful的区别是什么? gRPC是可以跨语言开发的 在gRPC客户端可以直接调用不同服务器上的远程程序,使用姿势看起来就像调用本地过程调用一样,很容易去构建分布式应用和服务。 "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status " ) func main() { // 连接grpc服务 conn, err := grpc.Dial(":8888", grpc.WithInsecure()) if err

    83240编辑于 2023-02-16
  • 来自专栏每日一善

    每天20分钟之java使用grpc

    > <grpc.version>1.49.0</grpc.version><! com.google.protobuf:protoc:3.5.1-1:exe:${os.detected.classifier}</protocArtifact> <pluginId>grpc-java </pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.16.1:exe:${os.detected.classifier 服务端rpc的入口类package cn.beckbi.server;import io.grpc.Server;import io.grpc.ServerBuilder;import java.io.IOException ;import io.grpc.StatusException;import java.util.HashMap;import java.util.Map;import java.util.Random

    1.1K30编辑于 2022-08-28
领券