Blog

Thinking will not overcome fear but action will.

微服务0-1

emmm… 已经落地的一个表格沉淀 微服务(Golang)

鉴权机制-OAuth2.0 && JWT

认证和授权 认证是通过账号密码等方式验证用户的身份 授权是用户能访问什么的过程,在认证之后 令牌token 基于令牌实现认证和授权—OAuth2.0 和 JWT 无状态,特别适合微服务 可以在任何地方生成, 生成和校验解耦 细粒度的访问控制 OAuth2.0 适用场景 客户端 需要 安全可控地获取 用户 授权, 访问服务器资源, 如开放api平台,社交联合登录,第三方应用...

ABTest系统调研

一、定义 为了一个优化目标,指定N个方案 判断哪个更好 计算收益,通过数据作为决策的依据 本质上是把流量分为N组, 每个组添加不同的策略, 然后根据这N组的数据指标,最终选择一个最好的组上线,实现精细化运营/产品迭代 二、步骤 2.1 确认优化目标 可量化的、具体的、可实施的 2.2 分析现有数据,找问题 2.3 优化方案头脑风暴 2.4 优先级排序 2.5 实施...

Istio调研和实践

本文分三部分,第一部分涉及istio的核心特性以及官方/KubeSphere运维部署相关 第二部分是核心特性和多集群、多命名空间、多控制平台部署实践 第三部分是Istio源码阅读和分析 一、总览 二、核心特性 2.1 流量管理 包括服务的注册、发现, 负载均衡策略,灰度/AB测试 2.1.1 虚拟服务和目标规则 负责实现服务发现和不同的负载均衡策略 引入虚拟服务支持不同的路由规则...

微服务ServiceMesh的核心架构

一、整体架构 二、协议 2.1 协议格式 2.1.1 CS ws: [头长度][包头][json格式包体] http 服务处理来自外部系统的CS包时,还需把请求信息(参数、cookie等)转换为pb,存进包体 2.1.2 SS 格式: [包头长度][pb序列化后的包头][序列化后的包体] 包头: servicename, funcname, 包体序列化方式, 路由规...

服务架构演进--微服务、ServiceMesh、Serverless调研

一、架构的演进 原始分布式。 通过多台计算机的协作,突破单机的性能瓶颈 单体 SOA。 SOA架构包含多个服务, 服务之间可以通过服务总线进行通信, 最终提供一系列功能 微服务 无服务 二、不同架构的对比 | 对比项 | 微服务 | 微服务2.0(SM) | 无服务 | | —- | :—-: | :—-: | :—-: | | 概念 | 微服务是一种通过多个...

php编码规范

1.文件 PHP代码文件必须以 < ? php 或 < ? = 标签开始; PHP代码文件必须以 不带BOM的 UTF-8 编码; PHP代码文件必须使用Unix LF (linefeed)作为行的结束符; PHP代码文件必须以一个空白行作为结束; 纯PHP代码文件必须省略最后的 ?> 结束标签; 2.行 行的长度一定不能有硬性的约束,软性的长度约束一定要限制在120个字...

go编码规范

官方编码规范:https://github.com/golang/go/wiki/CodeReviewComments 一、命名 文件名全小写 package 名字:包名与目录保持一致,尽量有意义,简短,不和标准库冲突, 全小写,不要有下划线 变量名采用驼峰法,不要有下划线,不要全部大写 命名 var ( GetInfo bool // 包外...

git分支管理模型

不用的发布流程可以有不同的git分支管理模型 一、持续发布流程 二、版本发布流程 三、主流的git分支开发流程 总的介绍: Git 工作流程 详细介绍:gitlab flow , github flow, git flow

UNP重读

一、结构划分 Tcp套接字编程:第二、四、五章、 Udp套接字编程:第二、八、二十二章 I/O:第六章 I/O复用、第十四章 高级I/O函数、第十六章非阻塞式I/O 范式: 第三十章 二、第二章 2.1 TCP 连接 可靠性。需要有ack包确认,否则自动重传,直至数次的重传失败才放弃 基于seq对数据进行排序去重,然后才返回给应用 流量控制。根据自身的...