@GrpcServise 注解的作用和使用示例详解
作者:香吧香 发布时间:2021-07-25 21:12:25
1.@GrpcServise的作用和优势
在没有使用@GrpcServise注解编写服务端时,我们通常需要自定义Server以及端口,包括start,stop ,注册service 方法等等,开发比较复杂。
使用 @GrpcService则可以省去自定义server,端口,包括start,stop方法等等,可以直接去实现我们需要的grpc方法,并使用 @GrpcService注解 就可以完成grpc服务端的代码开发。
使用 @GrpcService 注解与不使用该注解编写服务端代码的主要区别在于,@GrpcService 注解可以使 gRPC Server 自动扫描注解的服务并自动将其绑定到 gRPC 服务器中,而不需要手动注册这些服务实现。
使用 @GrpcService 注解的优势在于:
简化了 gRPC Server 的配置
因为 Spring Boot 提供自动配置管理,所以无需创建自己的服务器实例或手动将服务绑定到服务器上。Spring Boot 能够自动注册服务 Bean 并将其添加到正确的位置。
2.易于维护
当编写大型应用程序时,可能需要处理数百个接口和服务。使用 @GrpcService 注解可以避免手动维护所有服务实现实例的繁琐工作,并使代码更易于管理和维护。
2.@GrpcServise的使用
下面是一个简单的示例,展示了如何使用 @GrpcService 注解定义服务实现:
1.maven中添加相关的依赖:
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-spring-boot-starter</artifactId>
<version>${grpc.version}</version>
</dependency>
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-core</artifactId>
<version>${grpc.version}</version>
</dependency>
2.使用示例:
@GrpcService
public class MyServiceImpl extends MyServiceGrpc.MyServiceImplBase {
@Override
public void myMethod(MyRequest request, StreamObserver<MyResponse> responseObserver) {
// ...
}
}
同时,我们可以在springboot的配置文件中设置grpc相关的属性,例如指定端口:
grpc:
server:
port: 8888
@GrpcService 是一个 Spring Boot 处理器,它会查找实现了 grpc::BindableService 接口的类,并将其包装成一个 Spring Bean 对象。然后,将这些 Bean 对象注册到 gRPC Server 中。
来源:https://www.cnblogs.com/zjdxr-up/p/17413688.html
猜你喜欢
- 一般数据库的编码是utf8,utf8是不支持存储表情符的,当存入的微信昵称带有表情符时就会出现乱码情况,有两种解决方法:1.mysql数据库
- 最新需要在项目启动后立即执行某个方法,然后特此记录下找到的四种方式注解@PostConstruct使用注解@PostConstruct是最常
- 本文实例讲述了C#定义简单的反射工厂用法。分享给大家供大家参考。具体分析如下:首先,定义一个水果抽象类,代码如下:class Fruit{
- 1.什么是mybatis逆向工程在使用mybatis时需要程序员自己编写sql语句,针对单表的sql语句量是很大的,mybatis官方提供了
- 在android开发中,经常会遇到一个view需要它能够支持滑动的需求。下面通过本篇文章给大家介绍android view移动的六种方法。l
- 在用C#开发windows端程序并连接SQL Server时有可能会遇到数据库登录失败的问题,报错现象如下图所示:报错信息如下:System
- 今天就来拿贪吃蛇小游戏来练练手吧!贪吃蛇游戏规则: 1.按下空格键(游戏未结束)则游戏
- 主要从以下十几个方面对Hibernate做总结,包括Hibernate的检索方式,Hibernate中对象的状态,Hibernate的3种检
- 导语本章根据百度地图API,实现仿钉钉打卡功能。用到了基础地图、覆盖物、定位图层、陀螺仪方法、悬浮信息弹框。百度地图API地址
- 基本操作import org.apache.hadoop.conf.Configuration;import org.apache.hado
- 摘要在使用java做后台站点的开发张,图表和报表功能都是不可或缺 的。本文推荐了8款最精彩实用的Java图表应用,大部分图表应用的功能都类似
- 一、让中央控制器动态加载存储子控制器上期回顾,我们说明了自定义MVC工作原理,其中,中央控制器起到了接收浏览器请求,找到对应的处理人的一个作
- /** * 朴素字符串算法通过两层循环来寻找子串, * 好像是一个包含模式的“模板”沿待查文本滑动。 * 算法的思想是:从主串S的第p
- 通常我们遇到的图片缩放需求,都是图片基于屏幕自适应后,进行缩放和移动,且图片最小只能是自适应的大小。最近遇到一个需求,要求图片只能在屏幕内缩
- 引言其实对于分库分表这块的场景,目前市场上有很多成熟的开源中间件,eg:MyCAT,Cobar,sharding-JDBC等。本文主要是介绍
- Mybatis 入参方式单个基本类型或 String 参数在 mapper 文件中随便写<select id=""
- 前言之所以要写这篇关于C#反射的随笔,起因有两个:第一个是自己开发的网站需要用到其次就是没看到这方面比较好的文章。所以下定决心自己写一篇,废
- 前言Spring官方最近宣布,将在Spring Framework 5.0版本中正式支持Kotlin语言。这意味着Spring Boot 2
- 前言最近接手的项目里涉及到了 GIF 动图的播放与监听,在上一版本中对于 GIF 的处理是由 H5 来实现的,因为考虑到用户体验,因此现在的
- 跟同事讨论到- 用C# Stopwatch 取得效能数值,Stopwatch.ElapsedMilliseconds 只到毫秒(ms),如果