摘要: 介绍 康威定律是马尔文·康威1967提出的:“设计系统的架构受制于产生这些设计的组织的沟通结构。”通俗的来讲:产品必然是其(人员)组织沟通结构的缩影。 跨部门沟通时非常难的,系统各个模块的接口也反映了它们之间的信息流动和合作方式。 康为定律总结起来有四个定律: 第一定律 Communication 阅读全文
posted @ 2020-12-29 11:41 尹瑞星 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 竞态 竞态是指多个goroutine按某些交错顺序执行时无法给出正确的结果。竞态对于程序是致命的,因为它们可能潜伏在程序中,出现的频率也很低,有可能仅在高负载环境或者使用特定平台、架构时才出现。数据竞态发生于两个goroutine并发读写同一个变量并且至少其中一个是写入时。当发生数据竞态的变量类型是 阅读全文
posted @ 2020-12-22 21:12 尹瑞星 阅读(1203) 评论(0) 推荐(0) 编辑
摘要: 并发编程表现为程序由若干个自主的活动单元组成。go有两种并发编程风格,一种是goroutine和通道,它们支持通信顺序进程(CSP),CSP是一个并发模式,在不同的执行体(goroutine)之间传递值,但是变量本身局限于单一的执行体。还有一种共享内存多线程的传统模型,它们和在其他主流语言中使用线程 阅读全文
posted @ 2020-12-22 18:01 尹瑞星 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 很多面向对象语言都有借口的概念,Go语言的接口独特之处在于它是隐式实现的。 接口定义和实现 /* 定义接口 */ type interface_name interface { method_name1 [return_type] method_name2 [return_type] method_ 阅读全文
posted @ 2020-12-21 21:02 尹瑞星 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 函数 函数声明 go语言函数支持多返回值。 func name(parameter-list)(result-list){ body } 当函数存在返回列表的时候,必须显示以return结束。(除了break,抛异常等操作) func sub(x,y int) (z int){ z = x-y;re 阅读全文
posted @ 2020-12-21 14:54 尹瑞星 阅读(465) 评论(0) 推荐(0) 编辑
摘要: go语言主要有四种复合数据类型,数组、slice、map、结构体。 数组和结构体都是聚合类型,他们的值由内存中的一组变量构成。数组和结构体的长度都是固定的,而slice和map都是动态的数据结构。 数组 var a [3]int //定义 for i,v:=range a{ fmt.Printf(" 阅读全文
posted @ 2020-12-18 15:56 尹瑞星 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 程序结构 基础部分仅仅列举和其他语言不一样的地方(C语言为例)。 声明 Go语言有四个主要声明:var、const、type、func,类似于C语言中的变量,常量,结构体和函数。 package main //表明文件属于哪个包 import "fmt" const boilingF = 212.0 阅读全文
posted @ 2020-12-17 23:40 尹瑞星 阅读(337) 评论(0) 推荐(2) 编辑
摘要: 前言 ​ 高性能是每个程序员的追求,无论写一行代码还是做一个系统,都希望能够达到高性能的效果。高性能架构设计主要集中在两方面: 尽量提升单服务器的性能,将单服务器的性能发挥到极致 如果单服务器无法支撑性能,设计服务器集群方案 ​ 单服务器高性能的关键之一就是服务器采取的网络编程模型。服务器如何管理连 阅读全文
posted @ 2020-12-16 14:22 尹瑞星 阅读(8374) 评论(2) 推荐(3) 编辑
摘要: 边缘集群环境下Consul集成Envoy实践 前言 ​ Consul Service Mesh通过授权和加密来保护服务之间的通信,还可以拦截有关服务到服务通信的数据并将其呈现给监视工具。我们可以使用Consul随附的内置代理测试Consul Service Mesh,对于生产部署并启用L7功能,应使 阅读全文
posted @ 2020-12-13 23:06 尹瑞星 阅读(1642) 评论(0) 推荐(0) 编辑
摘要: Consul介绍 ​ 提供服务发现功能的框架有很多,具体的选型和比较就不再介绍,这里主要介绍一下Consul。 ​ consul是分布式的、高可用的、横向扩展的。提供的一些关键特性: service discovery:consul通过DNS或者HTTP接口使服务注册和服务发现变的很容易,一些外部服 阅读全文
posted @ 2020-12-13 23:04 尹瑞星 阅读(871) 评论(0) 推荐(0) 编辑