会员
周边
捐助
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
微服务实践
- Prefer tools over conventions and documents.
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
8
9
10
11
12
13
14
15
16
···
19
下一页
2020年11月2日
基于 prometheus 的微服务指标监控
摘要: 基于prometheus的微服务指标监控 服务上线后我们往往需要对服务进行监控,以便能及早发现问题并做针对性的优化,监控又可分为多种形式,比如日志监控,调用链监控,指标监控等等。而通过指标监控能清晰的观察出服务指标的变化趋势,了解服务的运行状态,对于保证服务稳定起着非常重要的作用 prometheu
阅读全文
posted @ 2020-11-02 14:58 万俊峰Kevin
阅读(1438)
评论(0)
推荐(0)
编辑
2020年10月28日
熔断原理与实现Golang版
摘要: 在微服务中服务间依赖非常常见,比如评论服务依赖审核服务而审核服务又依赖反垃圾服务,当评论服务调用审核服务时,审核服务又调用反垃圾服务,而这时反垃圾服务超时了,由于审核服务依赖反垃圾服务,反垃圾服务超时导致审核服务逻辑一直等待,而这个时候评论服务又在一直调用审核服务,审核服务就有可能因为堆积了大量请求
阅读全文
posted @ 2020-10-28 11:10 万俊峰Kevin
阅读(876)
评论(0)
推荐(0)
编辑
2020年10月26日
如何利用go-zero在Go中快速实现JWT认证
摘要: 关于JWT是什么,大家可以看看官网,一句话介绍下:是可以实现服务器无状态的鉴权认证方案,也是目前最流行的跨域认证解决方案。 要实现JWT认证,我们需要分成如下两个步骤 客户端获取JWT token。 服务器对客户端带来的JWT token认证。 1. 客户端获取JWT Token 我们定义一个协议供
阅读全文
posted @ 2020-10-26 11:06 万俊峰Kevin
阅读(2753)
评论(0)
推荐(0)
编辑
2020年10月22日
如何让服务在流量暴增的情况下保持稳定输出
摘要: 服务自适应降载保护设计 设计目的 保证系统不被过量请求拖垮 在保证系统稳定的前提下,尽可能提供更高的吞吐量 设计考虑因素 如何衡量系统负载 是否处于虚机或容器内,需要读取cgroup相关负载 用1000m表示100%CPU,推荐使用800m表示系统高负载 尽可能小的Overhead,不显著增加RT
阅读全文
posted @ 2020-10-22 11:43 万俊峰Kevin
阅读(580)
评论(0)
推荐(1)
编辑
2020年10月21日
企业级RPC框架zRPC
摘要: 近期比较火的开源项目go-zero是一个集成了各种工程实践的包含了Web和RPC协议的功能完善的微服务框架,今天我们就一起来分析一下其中的RPC部分zRPC。 zRPC底层依赖gRPC,内置了服务注册、负载均衡、拦截器等模块,其中还包括自适应降载,自适应熔断,限流等微服务治理方案,是一个简单易用的可
阅读全文
posted @ 2020-10-21 15:09 万俊峰Kevin
阅读(2055)
评论(3)
推荐(5)
编辑
2020年10月20日
如何高效定义和验证restful请求的参数
摘要: go-zero针对文本的序列化和反序列化主要在三个地方使用 http api请求体的反序列化 http api返回体的序列化 配置文件的反序列化 完整示例可参照下面这篇文章: 快速构建高并发微服务 1. http api请求体的反序列化 在反序列化的过程中的针对请求数据的数据格式以及数据校验需求,g
阅读全文
posted @ 2020-10-20 11:40 万俊峰Kevin
阅读(1167)
评论(2)
推荐(0)
编辑
2020年10月19日
教你如何帮助前端同学快速生成API接口代码
摘要: 最近我们团队开源的后端微服务框架go-zero增长势头比较迅猛,这篇文章我讲讲go-zero对前端团队的作用,并通过一个示例来给大家演示我们是怎么做的,希望能给后端的同学也可以帮助前端同学提高开发效率👏 首先,我们来看看正常怎么实现api接口: 1,后端给出(或经过协商给出)api定义文档 2,前
阅读全文
posted @ 2020-10-19 17:20 万俊峰Kevin
阅读(1289)
评论(0)
推荐(0)
编辑
2020年10月16日
go-zero 如何应对海量定时/延迟任务?
摘要: 一个系统中存在着大量的调度任务,同时调度任务存在时间的滞后性,而大量的调度任务如果每一个都使用自己的调度器来管理任务的生命周期的话,浪费cpu的资源而且很低效。 本文来介绍 go-zero 中 延迟操作,它可能让开发者调度多个任务时,只需关注具体的业务执行函数和执行时间「立即或者延迟」。而 延迟操作
阅读全文
posted @ 2020-10-16 11:39 万俊峰Kevin
阅读(1390)
评论(0)
推荐(1)
编辑
2020年10月15日
通过MapReduce降低服务响应时间
摘要: 在微服务中开发中,api网关扮演对外提供restful api的角色,而api的数据往往会依赖其他服务,复杂的api更是会依赖多个甚至数十个服务。虽然单个被依赖服务的耗时一般都比较低,但如果多个服务串行依赖的话那么整个api的耗时将会大大增加。 那么通过什么手段来优化呢?我们首先想到的是通过并发来的
阅读全文
posted @ 2020-10-15 11:51 万俊峰Kevin
阅读(298)
评论(0)
推荐(0)
编辑
2020年10月14日
你还在手撕微服务?快试试 go-zero 的微服务自动生成
摘要: 0. 为什么说做好微服务很难? 要想做好微服务,我们需要理解和掌握的知识点非常多,从几个维度上来说: 基本功能层面 并发控制&限流,避免服务被突发流量击垮 服务注册与服务发现,确保能够动态侦测增减的节点 负载均衡,需要根据节点承受能力分发流量 超时控制,避免对已超时请求做无用功 熔断设计,快速失败,
阅读全文
posted @ 2020-10-14 10:35 万俊峰Kevin
阅读(1044)
评论(0)
推荐(3)
编辑
上一页
1
···
8
9
10
11
12
13
14
15
16
···
19
下一页