Blog

Thinking will not overcome fear but action will.

服务架构演进--微服务、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对数据进行排序去重,然后才返回给应用 流量控制。根据自身的...

java语言熟悉

一、 JVM 核心运行流程、类的加载机制 Java文件->.class文件->类加载阶段(双亲委派,自下而上找上层的类加载器加载,再往下层找,直至找到)->类的生命周期(JVM) 内存结构 方法区(类信息、静态变量)、堆内存(类对象存储) GC 栈区、计数器不需要进行GC,与线程的生命周期同步; 方法区和堆内存需要进行GC; 可达性分析(GC ROOTS开始)...

云原生应用与k8s

本文分两部分, 第一部分(一~七)介绍云原生相关概念和关键技术, 第二部分(八~十一)介绍k8s相关内容,包括架构、网络、存储、实践等 一、云原生的定义 CNCF 容器化 动态编排调度 – 提供资源的利用率、降低运维成本 微服务 二、云原生的关键技术 容器->微服务->DevOps 三、微服务&服务网格(Service Mesh) 3.1. 微服务...

经济学原理学习

像经济学家一样思考 “因果”关系的观点, 需要考虑多个关键变量。 控制变量 对某个结果的预期,市场总是将预期提前消化了 相互依存与贸易的好处 双赢。时间的总量是一定的, 甲方单位时间内生产A东西的性价比低(相对于生产B), 但是对于乙方,可能生产A商品的性价比高。这时说明乙方相对于甲方, 在A商品上有比较优势。 通过贸易,可实现双赢 供给与需求的市场力量 市场完...

APUE重读笔记

一、结构划分 概述: 第一、第二章 I/O: 第三、第四、第五章 进程、线程:第七、八、九、十章–进程; 第十一、十二章–线程 更多I/O:第十三(守护进程)、十四、十八章 IPC:第十五、十六、十七 实例: 十九(伪终端)、二十(数据库函数库)、二十一(网络打印机通信) 二、概述 unix提供的服务 UNIX的体系结构图 内核->系统调用-&g...

欢乐斗地主分布式系统实践

一、架构演进 网状拓扑,直连 总线拓扑,通过proxy ServiceMesh。 a. 点对点–sidecar; b. 通信感知其它节点情况 协议兼容–私有协议tdr gRpc; 加一层,pack, unpack 二、典型问题 CAP, 一致性、可用性 一致性的特征:多数派;多阶段,搜集;不反悔 2.1 并发问题 2.1.1 高并发问题 机器 多线程,本身...