前面我们分享了 go-zero 的快速实战以及日志组件的剖析,本次我们来实战使用 go-zero jwt 鉴权本次文章主要是分享关于 go-zero 中 jwt 的使用方式,会以一个 demo 的方式来进行实战,对于使用 goctl 工具以及安装细节就不在赘述,有需要的话可以查看:官网本次文章主要分为如下几个部分:Jwt 的简单介绍Go-zero 中使用 j ......
33
0
0
2024-02-03
原文链接: go-zero 的自适应熔断器上篇文章我们介绍了微服务的限流,详细分析了计数器限流和令牌桶限流算法,这篇文章来说说熔断。熔断和限流还不太一样,限流是控制请求速率,只要还能承受,那么都会处理,但熔断不是。在一条调用链上,如果发现某个服务异常,比如响应超时。那么调用者为了避免过多请求导致资源消耗过大,最终引发系统雪崩,会直接返回错误,而不是疯狂调用这 ......
73
0
0
2024-01-06
0.1、索引waterflow.link/articles/1665938704...我们都知道当发起http请求的时候,服务端会返回一些http状态码,不管是成功还是失败。客户端可以根据服务端返回的状态码,判断服务器出现了哪些错误。我们经常用到的比如下面这些:200:OK,请求成功204:NO CONTENT,此请求没有要发送的内容,但标头可能很有用。 用 ......
298
0
0
2022-11-16
0、转载go-zero docker-compose 搭建课件服务(六):完善jwt鉴权和返回结构0.1源码地址github.com/liuyuede123/go-zero-cou...1、用户服务登录接口生成jwt tokenuser/api/etc/user.yaml中增加用于生成jwt的secret和过期时间... Auth: Acces ......
253
0
0
2022-11-13
0、索引go-zero docker-compose 搭建课件服务(五):完善user服务0.1源码地址github.com/liuyuede123/go-zero-cou...1、生成model到项目根目录下创建model目录,并新建user.sqlmkdir user/rpc/model touch user/rpc/model/user.sql C ......
231
0
0
2022-11-13
本文需要介绍 gotools 工具需要使用的工具命令:gotools queue -h需要使用的工具命令:gotools crontab -h代码地址:github.com/wuyan94zl/gotools队列生成执行:gotools queue --name register目录queue |-- register |-- r ......
284
0
0
2022-11-12
这一节我们重现一下go-zero仓库中的短链接服务案例:短链接服务短链接服务的流程一般是这样的这里为了简单点我们就模拟一个生成短链接key的接口以及根据key去换取原url地址的接口准备工作这个案例我们要用到mysql、redis、以及etcd,这里为了简单我就用docker安装一下:#安装etcd服务端 docker pull bitnami/etcd ......
198
0
0
2022-11-12
上一篇文章中引入了消息队列对秒杀流量做削峰的处理,我们使用的是Kafka,看起来似乎工作的不错,但其实还是有很多隐患存在,如果这些隐患不优化处理掉,那么秒杀抢购活动开始后可能会出现消息堆积、消费延迟、数据不一致、甚至服务崩溃等问题,那么后果可想而知。本篇文章我们就一起来把这些隐患解决掉。批量数据聚合在SeckillOrder这个方法中,每来一次秒杀抢购请求都 ......
456
0
0
2022-11-09
前言本文根据 安前松 的视频分享整理而来,视频回放地址如下:www.bilibili.com/video/BV1Hr4y1x7N...goctl 的由来1. goctl 的诞生goctl 的最早功能是为了解决 GRPC 内网调试问题,大约是在 2019 年,在我们的生产环境中,rpc 是内网隔离的,不可通过外网访问,为了快速去 mock 一些线上 RPC c ......
265
0
0
2022-10-22
在yaml文件中设置配置#链路追踪 Telemetry: Name: travel-rpc Endpoint: http://127.0.0.1:14268//api/traces #因为本地调试所以是采用的这个 # Endpoint: http://jaeger:14268/api/traces Sampler: 1.0 ......
252
0
0
2022-09-15
微信与支付宝支付之前写的支付回调的逻辑在网关层处理,网关一般是接收参数,响应数据。所以有些不合理。下面做了些处理微信支付回调这里用的是官方的SDK, V3版本下面是微信支付API接口,需要在handler传入 *http.Requestfunc WxNotifyHandleHandler(ctx *svc.ServiceContext) http.Handl ......
361
0
0
2022-07-18
go-zero 实战项目:blog本文以 blog 的网站后台为例,着重介绍一下如何使用 go-zero 开发 blog 的用户模块。本文涉及的所有资料都已上传 github 仓库 kougazhang/go-zero-demo,感兴趣的同学可以自行下载。用户模块是后台管理系统常见的模块,它的功能大家也非常熟悉。管理用户涉及到前端操作,用户信息持久化又离不开 ......
451
0
0
2022-07-15
RPC服务调用在go-zero中,使用是的zrpc来进行服务间的通信,zrpc是基于grpc这里的流程是user-api调用order-rpc服务添加api接口文件syntax = "v1" info( title: "用户管理" desc: "用户管理" author: "charlie" email: ......
258
0
0
2022-07-11
订单服务创建订单表> vim .\service\order\model\order.sql CREATE TABLE `order` ( `id` BIGINT NOT NULL AUTO_INCREMENT, `user_id` BIGINT NOT NULL DEFAULT 0 COMMENT '用户id', ......
314
0
0
2022-07-11
最近公司可能用到微服务,同事们推荐go-zero,然后自己实践操作了下。记录下来学习过程。关于go-zero介绍,请看这里,不多介绍了。微服务是将一个大系统拆分成多个子系统,每个子系统拥有独立的存储,如用户系统,订单系统,商品管理系统等等。这里我们只测试下用户系统和订单系统service # 服务目录 └───user # 子系统 ......
447
0
0
2022-07-11