![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
微服务
文章平均质量分 76
阿磊的博客
这个作者很懒,什么都没留下…
展开
-
K8S kube-proxy- iptable模式实现原理分析
每台机器上都运行一个kube-proxy服务,它监听api-server 和endpoint变化情况,维护service和pod之间的一对多的关系,通过iptable或者ipvs为服务提供负载均衡的能力。通常kube-proxy作为deemonset运行在各种节点中。kube-proxy 常支持以下二种:1)iptables:iptable模式是目前的默认模式,可以看成是userspace模式的升级版,它将请求的代理转发规则全部写入iptable中,砍掉了kube-proxy转发的部分。整...原创 2021-11-30 15:30:30 · 1695 阅读 · 0 评论 -
Golang Context 详解
当需要在多个 goroutine 中传递上下文信息时,可以使用 Context 实现。Context 除了用来传递上下文信息,还可以用于传递终结执行子任务的相关信号,中止多个执行子任务的 goroutine。Context 中提供以下接口:type Context interface { Deadline() (deadline time.Time, ok bool) Done() <-chan struct{} Err() error Value(key原创 2021-01-05 11:04:22 · 790 阅读 · 1 评论 -
微服务 Docker 容器化部署和 Kubernetes 容器编排
说明:基于之前使用go-kit构建的用户微服务,今天主要使用docker和k8s部署用户系统,前提是你的系统已经安装了docker 和k8s,一切的环境都安装完毕。首先看下项目结构svc下是存放各个微服务,今天就user服务部署,其他也类似,common目录存放的是数据库操作和数据表的定义,还有log工具,错误处理公共包;为了快速部署,user微服务去掉了服务发现和链路追踪模块,服务网关以后优化再加上。Docker 部署 user 服务user 服务依赖于 Redis 和 MySQL 数原创 2020-12-24 17:18:58 · 810 阅读 · 1 评论 -
使用微服务框架go-kit搭建用户微服务
什么是 Go kit?Go是一种很棒的通用语言,但是微服务需要一定量的专业支持。 RPC安全性,系统可观察性,基础结构集成甚至程序设计。Go kit 填补了标准库留下的空白,并使 Go 成为在任何组织中编写微服务的一流语言 下面基于go-kit实现用户微服务,用户的登陆,注册和获取用户信息,使用jwt方式来加密和解码,本文事例比较简单,主要是实现微服务和理解微服务开发,通信使用grpc服务来编码和解码涉及到技术的如下:1.grpc2.consul服务注册使用3.golang/r...原创 2020-12-04 16:13:45 · 1733 阅读 · 7 评论