架构
文章平均质量分 86
Redick01
Dromara开源社区Committer,开源项目Apache Shenyu贡献者,致力于后端,分布式,微服务,Service Mesh等技术!
展开
-
基于Zookeeper实现分布式分片算法
基于Zookeeper和简单的平均分配算法实现了一个简单的分布式分片服务,该分片服务目前满足公司需求,因为其简单,所以不一定满足其他场景,针对其他场景还需考虑其他因素,该示例供参考。原创 2023-01-05 16:05:41 · 416 阅读 · 0 评论 -
Dubbo线程池
Dubbo实现了自定义线程池,其核心接口是`ThreadPool`,该接口是`SPI`的默认的实现是`fixed`,Dubbo提供了四种实现,分别是`CachedThreadPool`、`FixedThreadPool`、`LimitedThreadPool`、`EagerThreadPool`。原创 2022-09-02 16:53:50 · 1689 阅读 · 0 评论 -
公司Dubbo项目Service Mesh改造
Dubbo项目Service Mesh改造原创 2022-06-13 18:19:21 · 530 阅读 · 1 评论 -
公司传统微服务架构切换Service Mesh架构部署方案总结
系统架构切换背景 公司系统既有架构是传统的微服务架构,服务的部署方式也是传统的系统部署方式,并没有进行容器化部署;使用Dubbo作为微服务中间件,Zookeeper为系统的注册中心,同时使用Elastic JOB分布式定时任务中间件进行分布式任务处理; 随着云原生技术的快速发展,公司系统架构也开始着手进行调整,从技术上看云原生架构可以使系统拥有更好的伸缩性,更好的观测性,更灵活的发布策略,更精细的流量控制等等,可以让开发人员更专注于业务逻辑的开发,让开原创 2022-05-11 17:50:35 · 652 阅读 · 2 评论 -
Prometheus-普罗米修斯 基于文件的服务发现
最近在做一些应用程序内部的一些组件的监控工作,比如线程池的监控,我这里要把监控线程池的指标暴露出去,能够让Prometheus抓取到,然后修改Prometheus的配置文件,监控的服务信息配置好,重启Prometheus,Prometheus就能够抓取数据了;这就存在一个问题,就是每次我新增监控的实例时都需要修改Prometheus配置,并且重启Prometheus,非常不方便。所以就引出了一个概念服务发现原创 2022-04-08 19:04:20 · 899 阅读 · 0 评论 -
可靠消息最终一致性分布式事务
文章目录分布式事务可靠消息最终一致性分布式事务流程可靠消息最终一致性分布式事务依赖组件编码实现数据库建表语句代码实现搭建项目订单服务库存服务测试结果总结分布式事务 在后端的系统开发中,都会使用到关系型数据库,文件,等等数据存储,并且在系统运行过程中都会遇到事务问题,所谓事务包含四个基本要素:原子性,一致性,隔离性和持久性,这里以关系型数据库MySQL为例,MySQL的InnoDB引擎提供了事务的支持;在单机单进程环境下,通过MySQL的事务的就可以实现事务的特性,但是系统架构一原创 2021-11-29 14:22:09 · 798 阅读 · 0 评论 -
Service Mesh - Kubernetes & Istio 开发环境搭建(Mac OS)
文章目录1.1. Kubernetes环境准备1.1.1. 安装Docker Desktopi1.1.2. 安装Kubernetes1.1.3. 验证Kubernetes1.1.4. 部署dashboard1.1.5. 查看dashboard1.2. Istio1.2.1. 下载Istio1.2.2. 安装 Istio1.2.2.1. 配置文件1.2.3. 安装1.2.3.1. 启动自动注入1.2.3.2. 验证Istio1.3. 小结1.4. 参考1.1. Kubernetes环境准备1.1.1. 安原创 2021-08-01 22:04:36 · 448 阅读 · 0 评论 -
Istio使用Envoy转发Http请求错误码426 Upgrade Required
文章目录背景解决办法426 Upgrade Required解释导致原因和解决办法参考背景 此前将公司的几个服务进行了服务网格的技术改造,其中一个应用是为H5提供Http接口,在改造之前,H5通过域名调用后台接口,请求经过nginx进行转发,转发的目标是阿里云SLB(阿里云负载均衡产品)的ip端口,服务网格改造后,Nginx的转发目标变成了k8s的ingress网关的ip端口,接着问题就出现了,接口调不通,Http返回426 Upgrade Required。解决办法426原创 2021-09-28 19:11:56 · 3442 阅读 · 0 评论 -
Istio入口流量路由
文章目录网格可视化Kiali通过Istio插件安装(本文使用)网关(ingressgateway)VirtualService(虚拟服务)总结参考 承接上文Service Mesh - Kubernetes & Istio 开发环境搭建(Mac OS),上文介绍了开发环境k8s+Istio的搭建,以及官方示例的部署,但是通过上文的例子,我们还是不能了解到流量究竟是怎样从外部流入到网格内,并且网格内流量就是怎么路由的,本篇文章将了解一下这方面内容。网格可视化Kiali通原创 2021-08-01 22:13:15 · 440 阅读 · 0 评论 -
Service Mesh - Istio概述
文章目录什么是IstioKubernetes和Istio为什么需要IstioIstio的核心功能(摘自官网)Istio 架构Envoy(使节、代表)Pilot(领航员)CitadelGalley小结参考什么是Istio Istio是一个由Google,IBM和Lyft团队合作开发的开源Service Mesh框架。Istio作为云原生时代下承 Kubernetes、上接Serverless架构的重要基础设施层,提供了基于微服务应用程序复杂性的解决方案。  原创 2021-07-31 23:59:29 · 783 阅读 · 0 评论 -
Service Mesh(服务网格)技术演进
文章目录什么是服务网格微服务及服务网格技术演进服务网格演进总结参考什么是服务网格 用一句话简单概括什么是Service Mesh,可以将其比作是应用程序或者说微服务间的TCP/IP,负责服务之间的网络调用、限流、熔断和监控。编写应用程序来说无需关心TCP/IP这一层,同样使用Service Mesh无需关心服务之间的那些通过微服务框架实现的事情,比如 限流,熔断,负载均衡等,现在只需要交给Service Mesh就可以了。为了更清晰的理解Service Mesh就需要了解微服务原创 2021-07-31 23:44:07 · 424 阅读 · 0 评论