本文来自正在规划的Go语言&云原生自我提升系列,欢迎关注后续文章。GoF(Gang of Four),GoF都是知名的软件工程师并且在面向对象编程和软件设计领域具有丰富的经验。他们于上世纪90年代一起在IBM的T.J.华生研究中心工作。这四人也即Erich Gamma、Richard Helm、Ralph Johnson和John Vlisside……继续阅读 » Alan 2年前 (2023-03-28) 1255浏览 0评论1个赞
本文来自正在规划的Go语言&云原生自我提升系列,欢迎关注后续文章。一个应用很重要的部分是网络流量的来来回回。服务发现一章中提到,Kubernetes拥有一些能力可让服务暴露到集群之外。对于很多用户的简单用例,这种能力足够用了。但服务对象在OSI模型的第4层操作。也就是说它只转发TCP和UDP连接,不会深入到连接内部。因此,在集群上托管多个应用使用……继续阅读 » Alan 2年前 (2023-02-08) 1780浏览 0评论0个赞
本文来自正在规划的Go语言&云原生自我提升系列,欢迎关注后续文章。Kubernetes是一套非常动态的系统。该系统涉及到将Pod放到节点上、保障其启动运行以及在需要时重新进行调度。有根据负载自动调节Pod数量的方式(比如横向Pod自动扩展,参见副本集一章中的自动扩展副本集)。系统API驱动的属性鼓励大家创建更高级的自动化。Kubernetes的动……继续阅读 » Alan 2年前 (2023-01-04) 1085浏览 0评论0个赞
本文来自正在规划的Go语言&云原生自我提升系列,欢迎关注后续文章。Kubernetes可随着应用大小和复杂度的扩展而扩展。标签和注解是Kubernetes中的基本概念,可以让人类的想法对应用进行分组。我们可以组织、标记以及交叉索引所有表示应用中分组的资源。标签是打在Kubernetes对象比如Pod和副本集上的键值对。可以是任意名称,对于关联识别……继续阅读 » Alan 2年前 (2022-12-06) 1654浏览 0评论0个赞
本文来自正在规划的Go语言&云原生自我提升系列,欢迎关注后续文章。在之前的文章中,我们讨论过如何将应用容器化,但现实中对容器化应用的部署,常常需要将多个应用放到独立的单元、调度到同一台机器。类比示例参见下图,包含伺服web请求的容器和与远程Git仓库同步的文件系统容器。图5-1:两个容器及共享文件系统的示例Pod一开始可能会想将 web ……继续阅读 » Alan 2年前 (2022-12-01) 1140浏览 0评论0个赞
本文来自正在规划的Go语言&云原生自我提升系列,欢迎关注后续文章。kubectl命令行工具非常强大,在接下来的文章中,我们会使用它来创建对象并与Kubernetes API进行交互。但在此之前,我们先过一遍可用于所有Kubernetes对象的基础kubectl命令。命名空间Kubernetes使用命名空间来组织集群中的对象。可以把命名空间看成是……继续阅读 » Alan 2年前 (2022-11-26) 1159浏览 0评论0个赞
使用Go语言创建3个微服务和1个API网关 (2022版)本文是系列文章使用gRPC、API网关和权限校验创建Go微服务的下篇。我们继续讲解。商品微服务 (go-grpc-product-svc)Github: https://github.com/alanhou/go-grpc-project这是三个微服务中的第二个。这里我们实现三个功能:……继续阅读 » Alan 2年前 (2022-08-23) 1294浏览 0评论0个赞
微服务架构Martin Fowler一组小的服务独立的进程轻量级通信基于业务能力独立部署无集中式管理Loosely coupled service oriented architecture(SOA) with bounded contextDDD – Domain Driven Design– 决定软件复杂性……继续阅读 » Alan 4年前 (2020-12-29) 3933浏览 0评论3个赞