entities.entities_for_tag

58 total results found

基于 Docker Compose 构建 MySQL 集群实现主从复制并引入 Kingshard 进行读写分离

微服务架构 项目实战

整体架构 前面做好了有关 CAP 理论和数据库主从同步的理论铺垫,今天我们正式来搭建一主多从的 MySQL 数据库集群。我们将以用户微服务数据库为例,演示如何基于 Docker Compose...

由 学院君 发布于3 weeks ago    浏览数: 84    点赞数: 0

基于 Logrus + GELF + Loggly 实现集中化日志存储解决方案

微服务架构 项目实战

引言 在单体应用中,日志存储和管理相对简单,尤其是单服务器部署,只需要存储到本地即可,对于集群部署,则可以通过接入第三方日志存储服务来更好地查询(比如学院君之前介绍过的 Sentry),对于基...

由 学院君 发布于4 weeks ago    浏览数: 44    点赞数: 0

基于 Jaeger 实现分布式服务追踪(中):Micro API 网关接口层服务追踪

微服务架构 项目实战

引言 上篇教程,我们演示了如何在微服务内部 RPC 调用之间通过内置的中间件基于 Jaeger 进行服务追踪。除此之外,在 Go Micro 微服务体系内,还可以通过 Micro API 网关...

由 学院君 发布于1 month ago    浏览数: 35    点赞数: 0

基于 Jaeger 实现分布式服务追踪(下):在 Laravel + Go Micro 中实现全链路服务追踪

微服务架构 项目实战

引言 Jaeger 实现了 Opentracing 协议,支持多种语言客户端,包括 Java、Go、PHP、Python、Node.js、C++ 等,我们在前面 Micro 框架中实现的正是 ...

由 学院君 发布于1 month ago    浏览数: 59    点赞数: 0

基于 Jaeger 实现分布式服务追踪(上):整体介绍 & RPC 内部服务调用链路追踪

微服务架构 项目实战

分布式服务追踪概述 所谓分布式服务追踪指的是在微服务系统中追踪每次用户请求,以便记录日志、排查问题。 在之前的单体应用中,追踪一次用户请求非常简单,因为不涉及跨服务器、跨应用的网络请求,请求...

由 学院君 发布于4 months ago    浏览数: 194    点赞数: 1

基于 Go Config + Etcd 实现集中化配置管理解决方案

微服务架构 项目实战

简介 本来想先写篇基于 Etcd 作为配置中心,再通过 Viper 进行热加载的教程,但是实测过程中遇到很多坑,不太适合新手入门,所以这里直接上 Go Micro 框架自带的配置中心解决方案 ...

由 学院君 发布于1 month ago    浏览数: 89    点赞数: 0

基于 Go Module 管理依赖并将注册中心调整为 Etcd

微服务架构 RPC 框架

前言 由于 Go Micro 框架去年年底将 Consul 从默认支持的注册中心调整为通过插件机制引入,导致很多同学反映按照基于 Go Micro 框架构建一个简单的微服务接口这篇教程遇到很多...

由 学院君 发布于1 month ago    浏览数: 1370    点赞数: 1

基于 GoConvey 实现 BDD 风格单元测试 & 数据库模拟测试

微服务架构 项目实战

TDD vs. BDD 我们可以基于 Go 语言自带的测试包在微服务中轻松实现 TDD 风格的单元测试,不过今天学院君想要给大家介绍下如何实现 BDD 风格的单元测试。 开始之前,先简单介绍...

由 学院君 发布于1 month ago    浏览数: 76    点赞数: 0

基于 Go Micro 框架构建一个简单的微服务接口

微服务架构 RPC 框架

友情提示:由于 Go Micro 已经将 Consul 从开箱支持调整为插件支持,所以本篇教程对于新手已经不再适用,最新版本教程在这里:https://xueyuanjun.com/post...

由 学院君 发布于6 months ago    浏览数: 5031    点赞数: 4

服务治理对系统性能的影响(下):负载测试报告对比分析

微服务架构 项目实战

上篇教程,我们实现了在一个微服务中调用另一个微服务的服务接口,并对该接口进行了负载测试,测试结果表明,系统中某些服务实例的不可用会造成系统服务延迟变长,但是由于 Go Micro 框架本身提供了...

由 学院君 发布于1 month ago    浏览数: 57    点赞数: 0

服务治理对系统性能影响(上):在一个微服务中调用另一个微服务的接口

微服务架构 项目实战

接下来,学院君通过对比负载测试给大家演示下服务熔断和限流对微服务系统整体性能的影响,在此之前,先要实现在一个微服务中调用另一个微服务的服务接口,比如在 DemoService 中调用 UserS...

由 学院君 发布于1 month ago    浏览数: 57    点赞数: 0

服务治理篇(四):服务限流及其在 Go Micro 中的实现

微服务架构 项目实战

引入 对于高并发系统而言,保证系统可用性通常有以下几种措施: 缓存 熔断 降级 限流 缓存的目的是提高系统访问速度以及系统可以处理的容量,通常包括业务数据的缓存、服务节点的缓存等;熔...

由 学院君 发布于1 month ago    浏览数: 84    点赞数: 0

服务治理篇(三):自定义 Hystrix 中间件实现熔断条件配置、重试机制及服务降级

微服务架构 项目实战

今天这篇教程我们来演示如何在 Go Micro 项目中自定义 Hystrix 中间件实现熔断条件配置、重试机制实现及服务降级处理。 初始化 首先在 laracom 根目录下创建 common...

由 学院君 发布于2 months ago    浏览数: 67    点赞数: 0

服务治理篇(二):基于 Hystrix 实现服务熔断及监控展示

微服务架构 项目实战

在上篇教程中,学院君介绍了微服务架构中的断路器模式以及开源实现 —— Netflix Hystrix,不过原生实现是基于 Java 的,Go 语言中对应的实现是 hystrix-go。 在 G...

由 学院君 发布于2 months ago    浏览数: 75    点赞数: 0

基于 Gatling 进行负载测试(中):通过 Maven + Gatling 实现并发负载测试

微服务架构 项目实战

上篇教程我们演示了如何基于 Docker Swarm + Docker Compose 部署服务实例,之所以这么大费周章主要是为了后续方便测试服务集群的性能和可用性,这一点在本地通过 Docke...

由 学院君 发布于1 month ago    浏览数: 58    点赞数: 0