分布式
文章平均质量分 83
风平浪静如码
这个作者很懒,什么都没留下…
展开
-
想要深入理解分布式事务,看这篇就足矣
随着业务的快速发展,业务复杂度越来越高,大部分互联网公司几乎都会从单体走向分布式,特别是转向微服务架构,随之而来就必然遇到分布事务这个难题。原创 2022-03-17 21:22:00 · 671 阅读 · 0 评论 -
你知道什么是CI/CD吗?不懂?五分钟让你彻底理解!
在CI/CD和DevOps领域中,持续交付和持续部署是一个老生常谈的话题。持续集成这个术语最早是在1994年由Grady Booch提出。微服务提出者Martin Flower在2014年发表的论文《Microservice》中也对软件开发持续集成提供了可参考原则。持续集成是借助工具对软件项目进行持续的自动化的编译打包构建测试发布,来检查软件交付质量的一种行为。而持续部署是基于持续交付的优势自动将经过测试的代码推入生产环境的过程。下文从细节描述了持续集成和持续部署各阶段的关键步骤。本文将探讨CI(持..原创 2021-06-17 15:06:10 · 932 阅读 · 0 评论 -
在数据库分库分表之后,你该如何解决事务问题?
一、概述随着时间和业务的发展,数据库中表的数据量会越来越大,相应地,数据操作,增删改查的开销也会越来越大。因此,把其中一些大表进行拆分到多个数据库中的多张表中。本篇文章是基于非事务消息的异步确保的方式来完成分库分表中的事务问题。二、需要解决问题2.1 原有事务由于分库分表之后,新表在另外一个数据库中,如何保证主库和分库的事务性是必须要解决的问题。解决办法:通过在主库中创建一个流水表,把操作数据库的逻辑映射为一条流水记录。当整个大事务执行完毕后(流水被插入到流水表),然后通过其他方式来执行这段流.原创 2021-05-30 17:04:51 · 578 阅读 · 3 评论 -
微服务架构中如何快速构建一个数据报告服务?
场景描述在微服务架构中,每个微服务负责自己的数据库,微服务A是不允许直接连接微服务B的数据库进行操作的。现在有2个微服务,一个是订单服务,一个是用户服务。有一个数据报告的需求:生成一份包含用户信息的订单报告。这就需要获取2个服务中的数据,进行连接汇总。如何构建这个数据报告的服务呢?方案1 直接连接数据库直接连接订单服务、用户服务的数据库,获取所需的数据,拿到后进行加工处理即可。非常简单,但有明显的问题。首先是破坏了上面所说的微服务的那个原则,直接去连别人的数据库,太粗暴了。还有一个.原创 2021-03-12 14:41:36 · 164 阅读 · 0 评论 -
k8s微服务接入SkyWalking,三分钟教你怎么玩!
前面我给大家分享了关于分布式链路追踪的基本原理和SkyWalking的k8s部署玩法,如果还没来得及看的朋友可以看我上篇文章。今天要给大家分享是我们日常工作中最常见的一种场景,那就是部署在k8s环境下的Java微服务,要接入SkyWalking的具体玩法,通过这个过程咱们可以更深入的理解SkyWalking进行数据采集的逻辑,也能更深刻地从运维角度理解日常工作中所写的Java微服务被无侵入的方式接入分布式链路追踪系统的过程!废话不多说,接下来就让我们开启干货模式吧!Java微服务接入SkyWalki.原创 2021-03-08 14:15:53 · 2611 阅读 · 0 评论 -
别说不会微服务了,五分钟教你巧妙玩转分布式下链路追踪!
本篇文章我将给大家介绍“分布式链路追踪”的内容,对于目前大部分采用微服务架构的公司来说,分布式链路追踪都是必备的,无论它是传统微服务体系亦或是新一代Service Mesh的微服务架构!而具体介绍的内容,本文不是完全讲理论,而是希望从理论到实践,引导大家去操作,因为只有这样才能真正从技术层面有深刻的认识和了解!分布式链路追踪概述在具体介绍分布式链路追踪系统之前,我们首先需要理解下什么是链路追踪?在本专栏前面关于监控系统的介绍中可以知道,监控系统的观测数据主要来源于统计指标、日志以及链路追踪这三个方面。.原创 2021-03-07 16:13:36 · 296 阅读 · 0 评论 -
超长解析:一文带你分析与解决分布式系统互斥性与幂等性问题
随着互联网信息技术的飞速发展,数据量不断增大,业务逻辑也日趋复杂,对系统的高并发访问、海量数据处理的场景也越来越多。如何用较低成本实现系统的高可用、易伸缩、可扩展等目标就显得越发重要。为了解决这一系列问题,系统架构也在不断演进。传统的集中式系统已经逐渐无法满足要求,分布式系统被使用在更多的场景中。分布式系统由独立的服务器通过网络松散耦合组成。在这个系统中每个服务器都是一台独立的主机,服务器之间通过内部网络连接。分布式系统有以下几个特点:可扩展性:可通过横向水平扩展提高系统的性能和吞吐量。高可靠性.原创 2020-12-27 17:03:09 · 288 阅读 · 0 评论 -
快速了解阿里微服务热门开源分布式事务框架——Seata
一、Seata 概述Seata 是 Simple Extensible Autonomous Transaction Architecture 的简写,由 feascar 改名而来。Seata 是阿里开源的分布式事务框架,属于二阶段提交模式。目前github上已经有 12267 颗星了,也很活跃,最新的提交时间很多都是几天前。首先我们回顾一下在单体应用中,例如一个业务调用了3个模块,他们都使用同一个数据源,是靠本地事务来保证事务一原创 2020-11-12 14:53:15 · 730 阅读 · 1 评论 -
一万四千字分布式事务原理解析,全部掌握你还怕面试被问?
前言从 CPU 到内存、到磁盘、到操作系统、到网络,计算机系统处处存在不可靠因素。工程师和科学家努力使用各种软硬件方法对抗这种不可靠因素,保证数据和指令被正确地处理。在网络领域有 TCP 可靠传输协议、在存储领域有 Raid5 和 Raid6 算法、在数据库领域有基于 ARIES 算法理论实现的事务机制……这篇文章先介绍单机数据库事务的 ACID 特性,然后指出分布式场景下操作多数据源面临的困境,引出分布式系统中常用的分布式事务解决方案,这些解决方案可以保证业务代码在操作多个数据源的时候,能够像操作单个原创 2020-11-07 16:27:45 · 244 阅读 · 5 评论 -
缓存就会用!它架构还没听过?分布式多级缓存架构知识大瓶装,25 张图打包拎走
一谈缓存,内心顿时豁然开朗。迫于key-value的形式,总感觉轻风扶面,杨柳依依,一切都尽在我掌握之中。犹如那一眼相中佳人的冲动,脑子里尽是佳人的容颜。那缓存如果站在网站架构的角度,你知道它的设计原理和影响作用吗?絮叨在商业的世界里,常说的一句话是 “现金为王”。在互联网、移动互联网乃至整个软件技术的世界里面,与之相近的就是 “缓存为王”。为何这么说呢?试想一下,你个完整的网络请求(HTTP、SOAP、RPC等),如果在执行过程的某个部分尚有缓存,是不是就能提前响应给客户端呢?为何现在很原创 2020-10-09 15:19:45 · 466 阅读 · 0 评论