microservice
0 人感兴趣 · 16 次引用
- 最新
- 推荐
Kratos 微服务框架 API 工程化指南
Kratos的RPC默认使用的是gRPC,与此同时我们还可以通过gRPC的grpc-gateway功能对RESTfull进行支持。这样,我们就可以同时支持gRPC和REST了。而这一切Kratos都已经封装好,无需知道底层的一切,用就好了。
高可用延迟队列设计与实现
延迟队列:一种带有 延迟功能 的消息队列 延时 → 未来一个不确定的时间 mq → 消费行为具有顺序性 这样解释,整个设计就清楚了。你的目的是 延时,承载容器是 mq。
服务注册与发现的原理和实现
对于搞微服务的同学来说,服务注册、服务发现的概念应该不会太陌生。 简单来说,当服务A需要依赖服务B时,我们就需要告诉服务A,哪里可以调用到服务B,这就是服务注册发现要解决的问题。
缓存设计的好,服务基本不会倒
本文由『Go开源说』第三期 go-zero 直播内容修改整理而成,视频内容较长,本文为其中缓存部分,内容有所删减和重构。
企业项目迁移 go-zero 全攻略(二)
上篇文章讲到 go-zero 架构设计和项目设计。本篇文章接着这个项目设计,将生成的 app 模块 中 gateway 和 RPC 进行改造。废话不多说,让我们开始!
从代码到部署微服务实战(一)
当前微服务已经成为服务端开发的主流架构,而Go语言因其简单易学、内置高并发、快速编译、占用内存小等特点也越来越受到开发者的青睐,微服务实战系列文章将从实战的角度和大家一起学习微服务相关的知识。
go-zero 之 rest 实战与原理
go-zero 是一个集成了各种工程实践的 web 和 rpc 框架,其中 rest 是 web 模块,该模块基于 Go 语言原生的 http 包进行构建,是一个高性能的,简单易用的 web 框架。使用 rest 能够快速构建 restful 风格 api 服务,同时具备服务监控和弹性服务治理能力
go-zero 如何扛住流量冲击(二)
`go-zero` 中的 `tokenlimit` 限流方案适用于瞬时流量冲击,现实请求场景并不以恒定的速率。令牌桶相当预请求,当真实的请求到达不至于瞬间被打垮。当流量冲击到一定程度,则才会按照预定速率进行消费。
go-zero 如何扛住流量冲击(一)
不管是在单体服务中还是在微服务中,开发者为前端提供的API接口都是有访问上限的,当访问频率或者并发量超过其承受范围时候,我们就必须考虑限流来保证接口的可用性或者降级可用性。即接口也需要安装上保险丝,以防止非预期的请求对系统压力过大而引起的系统
熔断原理与实现 Golang 版
在微服务中服务间依赖非常常见,比如评论服务依赖审核服务而审核服务又依赖反垃圾服务,当评论服务调用审核服务时,审核服务又调用反垃圾服务,而这时反垃圾服务超时了,由于审核服务依赖反垃圾服务,反垃圾服务超时导致审核服务逻辑一直等待,而这个时候评论
go-zero 如何追踪你的请求链路
微服务架构中,调用链可能很漫长,从 http 到 rpc ,又从 rpc 到 http 。而开发者想了解每个环节的调用情况及性能,最佳方案就是 全链路跟踪。
go-zero 如何应对海量定时 / 延迟任务?
一个系统中存在着大量的调度任务,同时调度任务存在时间的滞后性,而大量的调度任务如果每一个都使用自己的调度器来管理任务的生命周期的话,浪费cpu的资源而且很低效。
云原生 go-zero 微服务框架
go-zero是一个集成了各种工程实践的web和rpc框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验。