![](https://img-blog.csdnimg.cn/20190927151053287.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
架构
文章平均质量分 89
微服务架构
curd_boy
热爱编程,喜欢探索新技术
展开
-
排查问题备忘
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...原创 2019-07-01 17:01:00 · 112 阅读 · 0 评论 -
【面试】系统架构设计(持续更新)
微博热搜数据设计设计一个限流器,满足100w QPS 的限流。令牌桶。100w的计数器,然后每次请求去获取令牌,拿到就请求,拿不到就丢弃或者等待,等待超时就丢弃。然后面试官问怎么实现?我回答了,然后不满足他的要求,让我继续优化。然后我说在代理层面做,他说不一定能抗住这么大的请求量,你的处理延时怎么处理。然后我说分发在每个服务器上面做,每个服务器限小流,然后如果负载均衡就可以实现整体限流满足要求。......原创 2021-10-29 18:15:05 · 3166 阅读 · 1 评论 -
《微服务架构》注册配置中心
文章目录注册中心consul1、Consul服务注册中心的整体架构2.1 Consul Agent2.2 Consul Server3、Consul如何通过Raft协议实现强一致性?4、Consul如何通过Agent实现分布式健康检查?5、consul acl访问控制注册中心因为服务是单独部署的,因此服务间要想相互调用只能通过RPC的方式:部署在机器A上的用户服务通过RPC的方式调用部署在机器B上的订单服务。这就引入了微服务架构中一个重要的组件:服务发现与注册中心。你要调用订单服务的接口,首先你得知道原创 2022-03-10 22:15:25 · 980 阅读 · 1 评论 -
【微服务架构】Protocol Buffer序列化原理解析
通过将 结构化的数据 进行 串行化(序列化),从而实现 数据存储 / RPC 数据交换的功能序列化: 将 数据结构或对象 转换成 二进制串 的过程反序列化:将在序列化过程中所生成的二进制串 转换成 数据结构或者对象 的过程。原创 2022-11-14 16:19:01 · 2432 阅读 · 0 评论 -
【微服务】服务注册与发现
所谓服务注册中心就是一个保存可用服务实例的数据库服务注册与服务发现是在分布式服务架构中常常会涉及到的东西,业界常用的服务注册与服务发现工具有 ZooKeeper、etcd、Consul 和 Eureka。Consul 的主要功能有服务发现、健康检查、KV存储、安全服务沟通和多数据中心。Consul 与其他几个工具的区别可以在这里查看 Consul vs. Other Software。原创 2022-10-25 22:17:17 · 187 阅读 · 0 评论 -
k8s CRD相关
Kubernetes 1.7之后,提供了CRD(CustomResourceDefinitions)自定义资源的二次开发能力来扩展kubernetes API,通过此扩展可以向kubernetes API中增加新的资源类型,会比修改kubernetes apiserver的源代码或创建自定义的apiserver来的更加的简洁和容易。原创 2022-09-10 16:40:16 · 1925 阅读 · 0 评论 -
【微服务架构】分布式限流策略
在k8s中,服务是动态扩缩容的,相应的,每个节点应该都要有所变化,如果对外宣称限频100qps,而且后续业务方真的要求百分百准确,只能把LoadingCache的过期时间调小一点,让它能够近实时的更新单节点的qps。在实际的服务中,数据上报服务一般无法确定客户端的上报时间、上报量,特别是对于这种要求高性能,服务一般都会用到HPA来实现动态扩缩容,所以,需要去间隔一段时间去获取服务的副本数。如果服务的节点动态调整,单个服务的qps也能动态调整。......原创 2022-08-02 15:17:38 · 1503 阅读 · 0 评论 -
【微服务架构】分布式事务
基于本地消息表的方案中,将本事务外操作,记录在消息表中其他事务,提供操作接口定时任务轮询本地消息表,将未执行的消息发送给操作接口。操作接口处理成功,返回成功标识,处理失败,返回失败标识。定时任务接到标识,更新消息的状态定时任务按照一定的周期反复执行对于屡次失败的消息,可以设置最大失败次数超过最大失败次数的消息,不进行接口调用等待人工处理。..................原创 2022-07-14 23:06:31 · 482 阅读 · 0 评论 -
《微服务治理》服务网格-Istio实战
Istio的安装与部署参考:https://github.com/AliyunContainerService/k8s-for-docker-desktopcurl -L https://istio.io/downloadIstio | sh -配置环境变量source .bash_profile安装 Istioyang@192 ~$ istioctl manifest apply --set profile=demoThis will install the Istio 1.13.2原创 2022-04-17 22:02:51 · 1790 阅读 · 1 评论