Go微服务 - 第十部分 - 集中化日志

2018-05-22
阅读 6 分钟
10k
本文介绍我们的Go微服务基于Logrus、Docker Gelf日志驱动以及Loggly服务(Logging as a Service)的日志策略。

Go微服务 - 第九部分 - 使用RabbitMQ和AMQP进行消息传递

2018-05-22
阅读 17 分钟
10.9k
微服务是将应用程序的业务领域分离成具有清晰分离域的边界上下文,运行进程分离,其中任何跨域边界的持久关系必须依赖最终一致性,而不是类似于ACID事务或外键约束。其中很多概念都来自域驱动设计,或受其启发。领域驱动设计是另外一个很大的话题,足以用一个文章系列来介绍。

Go微服务 - 第八部分 - 使用Viper和Spring Cloud Config进行集中配置

2018-05-22
阅读 26 分钟
11.8k
考虑到微服务毕竟是用来分解应用为独立软件片段的,在微服务中集中处理一些东西感觉有些不太搭配。然而我们通常在后面的是进程之间的独立。微服务的其他操作应该集中处理。例如,日志应该在你的日志解决, 比如elk stack中终结, 监控应该纳入专用的监控中。 在这部分,我们将使用Spring Cloud Config和git处理外部化和集...

Go微服务 - 第七部分 - 服务发现和负载均衡

2018-05-22
阅读 11 分钟
13.3k
第七部分: Go微服务 - 服务发现和负载均衡 本部分处理一个健全的微服务架构的两个基本部分 - 服务发现和负载均衡 - 以及在2017年, 它们如何促进重要的非功能性需求的水平扩展。 简介 负载均衡是很出名的概念了,但我认为服务发现需要更深入的理解, 我先从一个问题开始。 如果服务A要和服务B通话,但是却不知道到哪里找...

Go微服务 - 第六部分 - 健康检查

2018-05-21
阅读 9 分钟
9k
随着我们的微服务越来越多,越来越复杂, 需要一种可以让Docker Swarm知道服务是否健康的机制就变得十分重要了。因此,本文重点看看如何为微服务加入健康检查。

Go微服务 - 第五部分 - 在Docker Swarm中部署

2018-05-21
阅读 9 分钟
6k
第五部分: Go微服务 - 在Docker Swarm中部署 这一部分,我们让accountservice服务在本地部署的Docker Swarm集群上运行,并探讨容器编排的核心概念。 本文处理下面的内容: Docker Swarm和容器编排。 使用Docker将accountservice服务容器化。 配置本地Docker Swarm集群。 以Swarm服务的方式部署accountservice服务。 运行...

Go微服务 - 第四部分 - 使用GoConvey进行测试和模拟

2018-05-21
阅读 2 分钟
5.3k
第四部分: Go微服务 - 使用GoConvey进行测试和模拟 如何对待微服务的测试? 当为这个特定领域建立测试策略时,是否需要考虑任何独特的挑战? 在第四部分,我们将看看这些话题。 单元上下文中测试微服务的主题。 书写GoConvey的BDD样式的单元测试。 介绍模拟技术。 既然本部分不会以任何方式改变核心服务, 这个时候无需基准...

Go微服务系列 - 第三部分 - 嵌入数据库和JSON

2018-05-21
阅读 8 分钟
6.1k
第三部分: Go微服务 - 嵌入数据库和JSON 在第三部分,我们让accountservice做一些有意义的事情。 声明一个Account结构体。 嵌入简单的key-value存储,我们可以在里边存储Account结构。 将结构体序列化为JSON, 然后通过HTTP服务来为/accounts/{accountId}提供服务。 源代码 源代码位置: [链接]。 声明Account结构体 结构...

Go微服务 - 第二部分 - 构建第一个Go微服务

2018-05-17
阅读 6 分钟
16.1k
第二部分: Go微服务 - 构建我们的第一个服务 第二部分包含: 设置我们的Go工作空间。 构建我们第一个微服务。 通过HTTP使用Gorilla Web Toolkit来提供一些JSON服务。 介绍 虽然通过HTTP提供JSON服务不是内部服务和外部服务的唯一选择,但本文聚焦的是HTTP和JSON. 使用RPC机制和二进制消息格式(例如Protocol Buffer)也用于...

Go微服务 - 第一部分 - 介绍及理论基础

2018-05-17
阅读 3 分钟
12.8k
下图是我们整个系列文章中构建的系统蓝图整体视图。然而,我们将从头开始写我们的第一个Go微服务,然后当我们沿着博客系列的各部分进展时,我们将会越来越接近下面的图所代表的结构。

微服务操作模型

2018-05-17
阅读 4 分钟
3.5k
随着系统领域部署微服务数量剧增,就会出现新的挑战,而这些挑战在只部署一些单体应用的时候是没有的。这篇文章我们就聚焦这些新的挑战,并给使用大量微服务部署的系统领域操作模型做个定义。

Go语言微服务系列文章

2018-05-17
阅读 1 分钟
13.2k
为什么是Go语言的微服务, 原因很简单,最近对Go语言花了些时间对它进行了深入学习, 还谈不上很厉害,但热度挺高。 加上最近项目开发中使用到微服务, 所以就特意留意了Go语言微服务相关的话题。