目录

Life in Flow

知不知,尚矣;不知知,病矣。
不知不知,殆矣。

ElasticStack

该文章已经加密。

ShardingSphere-JDBC

ShardingSphere   Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈,它由 JDBC、Proxy 和 Sidecar(规划中)这 3 款相互独立,却又能够混合部署配合使用的产品组成。 它们均提供标准化的数据分片、分布式事务和数据库治理功能,可适用于如 Java 同构、异构语言、云原生等各种多样化的应用场景。 三大组件对比 ShardingSphere-Sidecar(规划中,简单知道就行) 定位为 Kubernetes 的云原生数据库代理,以 Sidecar 的形式代理所有对数据库的访问 通过无中心、零侵入的方案提供与数据库交互的啮合层,即 Database Mesh,又可称数据库网格 ShardingSphere-JDBC 它使用客户端直连数据库,以 jar 包形式提供服务 无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis,或直接使用 JDBC 支持任何第三方的数据库连接池,如....

DDNS(Java)

该文章已经加密。

分布式事务

分布式事务  在分布式条件下,相互关联的多个数据由于跨系统,彼此的事务之间不被感知,无法保证 如何实现分布式下的一致性  典型情况下是两个思路: 理想状态:直接像单机数据库事务一样,多个数据库自动通过某种协调机制,实现了跨数据库节点的一致性。 使用场景:要求严格的一致性,比如金融交易类业务。 强一致 : 数据库使用XA协议实现,不是所有数据库都支持XA协议 一般情况:可以容忍一段时间的数据不一致,最终通过超时终止,调度补偿,冲正等等方式,实现数据的最终状态一致性。 使用场景:准实时或非实时的处理,比如 T+1的各类操作,或者电商类操作。 弱一致 : 1) 不用事务,业务侧补偿冲正 2) 所谓的柔性事务,使用一套事务框架保证最终一致的事务 XA 分布式事务协议   基于第一个强一致的思路,就有了基于数据库本身支持的协议,XA 分布式事务。XA 整体设计思路可以概括为,如何在现有事务模型上微调扩展,实现分布式事务。 X/Open   X/Open,即现在的 open group,是一个独立的组织,主要负责制定各种行业技术标准。X/Open 组织主要由各大知名公司或者厂商进行支持....

数据库拆分

主从架构无法解决单节点容量问题 部分解决高可用 降低主库一部分读压力 无法解决容量问题 主从结构解决了高可用,读扩展,但是单机容量不变,单机写性能无法解决。 提升容量--> 分库分表,分布式,多个数据库,作为数据分片的集群提供服务。 降低单个节点的写压力。 提升整个系统的数据容量上限。 单机数据库已经无法适应互联网的发展   传统的将数据集中存储至单一数据节点的解决方案,在容量、性能、可用性和运维成本这三方面已经难于满足互联网的海量数据场景。我们在单库单表数据量超过一定容量水位的情况下,索引树层级增加,磁盘 IO 也很可能出现压力,会导致很多问题。 性能:由于关系型数据库大多采用 B+ 树类型的索引,在数据量超过阈值的情况下,索引深度的增加也将使得磁盘访问的 IO 次数增加,进而导致查询性能的下降;同时,高并发访问请求也使得集中式数据库成为系统的最大瓶颈。 可用性:从可用性的方面来讲,服务化的无状态型,能够达到较小成本的随意扩容,这必然导致系统的最终压力都落在数据库之上。而单一的数据节点,或者简单的主从架构,已经越来越难以承担。 运维:当一个数据库实例中的数据达到阈值以上,....

张黑蛋

该文章已经加密。

Apache SkyWalking

布式架构下的排查问题复杂性 分布式应用架构的运维和诊断的过程变得越来越复杂,例如:接口诊断困难、应用性能诊断复杂、架构分析复杂等难题,传统的监控工具并无法满足,分布式链路系统由此诞生 核心:将一次请求分布式调用,使用 GPS 定位串起来,记录每个调用的耗时、性能等日志,并通过可视化工具展示出来 APM 系统(Application Performance Management) 讲到分布式的链路追踪系统,不得不说说它的前世今生了,APM 系统是可以帮助系统的行为做性能分析的工具 APM 系统,它是由谷歌公开的论文提到的,可以说谷歌还是很强的!而到后面,许多的技术公司就基于这边论文的原理,开发出来很多出色的 APM 框架,比如:skywalking、zipkin 等等 SkyWalking Skywalking 是什么 skywalkings 是一款国产的开源框架,在 2015 年开源使用,在 2017 年的时候加入了 Apache 孵化器 skywalking 是分布式应用程序的性能监控工具,专门是为了微服务(spring cloud)、云原生架构与容器架构(docker/....