摘要: 你是否遇到过这样的框架,它非常简单又是轻量级的,很容易上手,然而当你的项目变得复杂的时候它能自我进化成功能强大的重量级框架,而不需要把整个项目重写? 我是从来没见过。 先让我们来看一下项目的生命周期。通常,当一个新项目开始时,我们不知道它能持续多久,所以我们希望它尽可能简单。大多数项目都会在短时间内 阅读全文
posted @ 2020-06-28 14:03 倚天码农 阅读(935) 评论(0) 推荐(1) 编辑
摘要: 去年,我创建了一个清晰架构(Clean Architecture)微服务框架,它功能强大,但有些重。我写了一个系列文章来讲述它,请参阅"清晰架构(Clean Architecture)的Go微服务"。 我还指出了设计中存在的一些缺陷,并讲到希望以后能修复它们。现在我终于有时间对它进行了改造,结果比我 阅读全文
posted @ 2020-07-24 17:19 倚天码农 阅读(467) 评论(0) 推荐(1) 编辑
摘要: 本篇是我的事件驱动的微服务系列的第三篇,主要讲述如何在Go语言中创建第三方库。如果想要了解总体设计,请看第一篇"事件驱动的微服务-总体设计"。 在Go语言中创建第三方库是为了共享程序,做起来并不困难,不过你需要考虑如下几个方面: 第三方库的对外接口 第三方库的内部结构 如何处理配置参数 如何扩充第三 阅读全文
posted @ 2020-07-21 16:04 倚天码农 阅读(381) 评论(0) 推荐(1) 编辑
摘要: 在上一篇文章“一个非侵入的Go事务管理库——如何使用”中,我讲述了如何使用事务库。有些读者可能读过"清晰架构(Clean Architecture)的Go微服务: 事物管理" ,其中描述了事务管理系统的旧版本。那篇文章和本文之间会有一些重叠。因为大多数人可能还没有读过那篇文章或者即使读了也忘记了它的 阅读全文
posted @ 2020-06-22 08:14 倚天码农 阅读(806) 评论(0) 推荐(0) 编辑
摘要: 在文章"清晰架构(Clean Architecture)的Go微服务: 事物管理"中,我谈到了如何在清晰架构中实现非侵入的事务管理。 它允许你把事务代码与业务逻辑代码分开,并且让你在编写业务逻辑时不必考虑事务。但它也有一些缺点。首先,它是整个清晰框架(Clean Architecture)的一部分, 阅读全文
posted @ 2020-06-21 17:04 倚天码农 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 本篇是“事件驱动的微服务”系列的第二篇,主要讲述事件驱动设计。如果想要了解总体设计,请看第一篇"事件驱动的微服务-总体设计" 程序流程 我们通过一个具体的例子来讲解事件驱动设计。 本文中的程序有两个微服务,一个是订单服务(Order Service), 另一个是支付服务(Payment Servic 阅读全文
posted @ 2020-04-16 14:56 倚天码农 阅读(3121) 评论(1) 推荐(5) 编辑
摘要: 我在 ""微服务之间的最佳调用方式"" 中讲到了微服务之间的两种调用方式。微服务刚兴起时,大部分都是RPC的调用模式。我也写了一个RPC的架构,详情参见 ""清晰架构(Clean Architecture)的Go微服务"" 。但现在事件驱动的微服务越来越流行,因为大家觉得它是松耦合的。我会写一个新的 阅读全文
posted @ 2020-04-15 10:21 倚天码农 阅读(634) 评论(0) 推荐(0) 编辑
摘要: 要想快速高效率地掌握Go语言,关键是要通过不断写代码去训练,熟能生巧。方法是没问题的,但具体的路径呢?就像开车,能不能给个导航?我希望这篇文章能起到一个导航的作用,这里提供的路径,应该对很多人都适合。当然每个人的具体情况不同,因此路径会有差异。你可以对这个路径进行剪裁,得到最适合自己的。 目标(快速 阅读全文
posted @ 2020-03-18 10:27 倚天码农 阅读(1982) 评论(4) 推荐(3) 编辑
摘要: 更新 我最近对这个框架进行了重大升级,虽然所做的改动不大,但成效显著。这次更新修复了旧框架中的所有主要问题,尽管它的的主要项目结构和接口都没有改变,具体改动内容请参见清晰架构(Clean Architecture)的Go微服务—重大升级。 现在它几乎拥有了我理想框架中的所有内容。它是一个轻量级的框架 阅读全文
posted @ 2020-02-17 09:36 倚天码农 阅读(598) 评论(0) 推荐(0) 编辑
摘要: 编码风格在编程中是一个相对乏味的主题,但是合适的编码风格对一个有效的程序员是至关重要的。 它有三个组成部分: 1. 程序结构 ( application layout) 1. 编码规则或风格 1. 命名约定 我已经在 "清晰架构(Clean Architecture)的Go微服务: 程序结构" ¹中 阅读全文
posted @ 2020-02-03 10:05 倚天码农 阅读(391) 评论(0) 推荐(1) 编辑