Select -- 无阻塞读写 channel

通道阻塞在之前的 Go 的并发模型 可以了解到,FAN 流水模型可以多个 Goroutine 读一个 Channel 中的数据(FAN-OUT),或者多个 Chanel 将数据发送到一个 Goroutine 中接收(FAN-IN),但是无论是无缓冲通道,还是有缓冲通道,都存在阻塞的情况 无缓冲通道 特点:发送的数据需要被读取后,发送才会完成 阻塞场景: 通道中无数据,但执行都通道 通道中...

Kuberntes 创建 LoadBalancer 类型服务

前言 我们知道,Service 机制,以及 Kubernetes 里的 DNS 插件,都是在帮助我们解决同样一个问题,即:如何找到某一个容器;而 Service 是由 kube-proxy 组件,加上 iptables 来共同实现的;所谓 Service 的访问入口,其实就是每台宿主机上由 kube-proxy 生成的 iptables 规则,以及 kube-dns 生成的 DNS 记录。而...

Go 并发模型

前言 Go 语言是为并发而生的语言,Go 语言是为数不多的在语言层面实现并发的语言;也正是 Go 语言的并发特性,吸引了全球无数的开发者 并发 (concurrency) 和并行(parallellism)在了解 Go 的并发原理之前,先了解什么是并发什么是并行; 并发 ( concurrency ) 两个或两个以上的任务在一段时间内被执行。我们不必 care 这些任务在某一个时间点是否...

git-flow 的工作流程

前言 当在团队开发中使用版本控制系统时,商定一个统一的工作流程是至关重要的。Git 的确可以在各个方面做很多事情,然而,如果在你的团队中还没有能形成一个特定有效的工作流程,那么混乱就将是不可避免的。 git-flow 就是当前非常流行且行之有效的工作流程, 是一个 Git 扩展集,按 Vincent Driessen 的分支模型提供高层次的库操作,并且提供了极其出色的命令帮忙以及输出提示,本...

Gitlab or Github 提交规范和建议

标签(tag)的管理规范标签分类正式标签:以发布的版本号居多,例:v.1.2 临时标签:版本测试期间做回溯和标记使用,例:v1.1-st 、 v1.1-sit2 命名规范 标签前缀(大多)以发布版本号命名,示例:v1.3.1(后期遇到特殊情况再讨论) 如果需要在版本号后加备注信息,用『“-”:连字符』连接,不再使用 “_” 下划线,且字母全部小写,强烈建议不要以中文命名。 版本经历多次修改时...

简化 Kubernetes 应用部署工具 -- Helm

先区分下概念 Docker: 镜像是把一个单纯的 App 和它的安装环境整合在一起。 Kubertnetes: 管理 Docker 容器的生成和毁灭,保证 Docker 容器对应 App 的高可用(监控、自动创建)和易维护(部署和对外暴露、动态扩容、启动停止删除等)。 Helm: 是为了方便配置和部署、升级和回滚应用,尤其是多个 Service 组合创建的一个大型应用,比如网站 为什么要用...

vscode + sftp 开发环境同步差异文件

前言解决需求: 本地是 win10 系统,代码需要在 linux 下跑,又不想装虚拟机或双系统; 所以,项目用到连接远程测试服务器进行开发联调,需要安装 SFTP/FTP 的扩展插件才能同步代码; 还有其他实现方法,如,Git 工作流、winscp、rzlz 等,但大都不太灵活,甚至麻烦 CentOS 7 配置使用 SFTP 服务器何为 SFTP?SFTP,即 SSH 文件传输协议( S...

暴力学习 k8s - 集群搭建

前言 其实,搭建一个 Kubernetes(K8S)集群不是一件容易的事情,主要困难有两个: 那一道厚厚的墙 对 K8S 的知识不熟悉 只要能解决上面两个问题,搭建的过程实际上就没有那么复杂了。 本系列是我在搭建过程中踩的无数坑 、以及查阅众多相关问题解决的文章的一些记录和总结。 集群规划网络配置 节点网络: 192.168.31.0/24 service 网络: 10.96.0.0/...

开启云原生之门

什么是云原生CNCF组织在讲云原生之前,我们先了解一下 CNCF ,即云原生计算基金会,2015年由谷歌牵头成立,基金会成员目前已有一百多企业与机构,包括亚马逊、微软。思科等巨头。目前 CNCF 所托管的应用已达14个,下图为其公布的Cloud Native Landscape,给出了云原生生态的参考体系: 云原生(Cloud Native)CNCF 给出了云原生应用的三大特征: 容器...

优化睡觉的沙发

博客太久没动了,刚好没事做的时候,就特别改博客主题,感觉像是强迫症,得改~ 玩博客久了,就像谈恋爱,刚开始很美好,久而久之,问题就冒出来,总想让她变的更好, 其实这些都是次要的,我也知道更应该专注文章的内容,哎…… 集成GitmentGitment 是作者实现的一款基于 GitHub Issues 的评论系统。支持在前端直接引入,不需要任何后端代码。可以在页面进行登录、查看、评论、点赞等...