【Go-Zero】Windows启动rpc服务报错panic:context deadline exceeded解决方案

本文主要是介绍【Go-Zero】Windows启动rpc服务报错panic:context deadline exceeded解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【Go-Zero】Windows启动rpc服务报错panic:context deadline exceeded解决方案

大家好 我是寸铁👊
总结了一篇Windows11下启动rpc服务报错panic解决方案的文章✨
喜欢的小伙伴可以点点关注 💝

问题来源

今天在编写完proto文件后,使用goctl生成对应的rpc 服务文件时,启动rpc 服务,发现panic 报错。

goctl命令

// rpc目录下创建
goctl rpc protoc user.proto --go_out=types --go-grpc_out=types --zrpc_out=.

报错信息

报错信息如下:

在这里插入图片描述

具体如下:

panic: context deadline exceeded
goroutine 1 [running]:
github.com/zeromicro/go-zero/zrpc.(*RpcServer).Start(0x28d3ec0?)
D:/Environment/GoWorks/pkg/mod/github.com/zeromicro/go-zero@v1.6.1/zrpc/server.go:89 +0x75
main.main()
D:/GoProject/zero_study/user/rpc/user.go:38 +0x299
exit status 2


排查

方法1

是不是其他进程的占用了启动rpc 服务的默认端口:2379
需要先把进程关闭,再启动服务。
必要时,重启电脑,试一下


方法2(优先尝试)

假如不是上面的原因引起的,则说明是因为etcd 服务没有启动!
为什么?
这里需要简单了解一下rpc 的原理
查阅一下官方文档
在这里插入图片描述

这说明使用goctl生成rpc服务时会默认向etcd注册中心注册当前服务的信息,也就是说etcd需要开启,才能接收到生成的rpc服务发送过来的信息!


在清楚这个原理后,只需要启动etcd 服务即可。

假如你还没有安装etcd ,那么需要先安装一下。
具体安装教程见这篇博客


如果你已经安装,那么需要手动打开一下

  • 首先,找到你安装etcd 的文件夹
    在这里插入图片描述

  • 接着,需要在路径框输入cmd

在这里插入图片描述

  • 最后,在启动的窗口中输入etcd 即可

在这里插入图片描述


之后再回到goland去启动rpc 服务即可!

在这里插入图片描述

现在,就可以正常启动rpc 服务啦!


看到这里的小伙伴,恭喜你又掌握了一个技能👊
希望大家能取得胜利,坚持就是胜利💪
我是寸铁!我们下期再见💕

往期好文💕

【保姆级教程】Windows11下go-zero的etcd安装与初步使用

【保姆级教程】Windows11安装go-zero代码生成工具goctl、protoc、go-zero

【Go面试向】defer与time.sleep初探

【Go面试向】defer与return的执行顺序初探

【Go面试向】Go程序的执行顺序

【Go面试向】rune和byte类型的认识与使用

【Go面试向】实现map稳定的有序遍历的方式

这篇关于【Go-Zero】Windows启动rpc服务报错panic:context deadline exceeded解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/659567

相关文章

电脑找不到mfc90u.dll文件怎么办? 系统报错mfc90u.dll丢失修复的5种方案

《电脑找不到mfc90u.dll文件怎么办?系统报错mfc90u.dll丢失修复的5种方案》在我们日常使用电脑的过程中,可能会遇到一些软件或系统错误,其中之一就是mfc90u.dll丢失,那么,mf... 在大部分情况下出现我们运行或安装软件,游戏出现提示丢失某些DLL文件或OCX文件的原因可能是原始安装包

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

解决IDEA报错:编码GBK的不可映射字符问题

《解决IDEA报错:编码GBK的不可映射字符问题》:本文主要介绍解决IDEA报错:编码GBK的不可映射字符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录IDEA报错:编码GBK的不可映射字符终端软件问题描述原因分析解决方案方法1:将命令改为方法2:右下jav

MyBatis模糊查询报错:ParserException: not supported.pos 问题解决

《MyBatis模糊查询报错:ParserException:notsupported.pos问题解决》本文主要介绍了MyBatis模糊查询报错:ParserException:notsuppo... 目录问题描述问题根源错误SQL解析逻辑深层原因分析三种解决方案方案一:使用CONCAT函数(推荐)方案二:

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Spring Boot中JSON数值溢出问题从报错到优雅解决办法

《SpringBoot中JSON数值溢出问题从报错到优雅解决办法》:本文主要介绍SpringBoot中JSON数值溢出问题从报错到优雅的解决办法,通过修改字段类型为Long、添加全局异常处理和... 目录一、问题背景:为什么我的接口突然报错了?二、为什么会发生这个错误?1. Java 数据类型的“容量”限制

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

Windows 上如果忘记了 MySQL 密码 重置密码的两种方法

《Windows上如果忘记了MySQL密码重置密码的两种方法》:本文主要介绍Windows上如果忘记了MySQL密码重置密码的两种方法,本文通过两种方法结合实例代码给大家介绍的非常详细,感... 目录方法 1:以跳过权限验证模式启动 mysql 并重置密码方法 2:使用 my.ini 文件的临时配置在 Wi