加载中
数据库中间件详解

1 数据库拆分过程及挑战 互联网当下的数据库拆分过程基本遵循的顺序是:垂直拆分、读写分离、分库分表(水平拆分)。每个拆分过程都能解决业务上的一些问题,但同时也面临了一些挑战。 1.1 垂直...

分布式事务概述

点击上方"田守枝的技术博客",关注我 1 事务简介 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。在关系数据库中,一个事务由一组SQL语句组成。事务应该具有...

异地多活场景下的数据同步之道

点击上方"田守枝的技术博客",关注我 在当今互联网行业,大多数人互联网从业者对"单元化"、"异地多活"这些词汇已经耳熟能详。而数据同步是异地多活的基础,所有具备数据存储能力的组件如:数...

2019/03/29 09:30
0
Mysql分支选择:Percona Or MariaDB

点击上方"田守枝的技术博客",关注我 1 简介 本文将对MySQL官方版本以及最流行的两个分支:MariaDB 和 Percona Server进行对比介绍。笔者曾经遇到过一些同学,在可能在一个公司待了可能几年了...

剖析Spring多数据源

点击上方"田守枝的技术博客",关注我 在实际开发中,经常会遇到应用要访问多个库的情况,需要配置多个数据源。本文会介绍spring多数据源的典型场景,如何优雅的实现多数据源,并结合spring、...

源码剖析 Mybatis 映射器(Mapper)工作原理

点击上方"田守枝的技术博客",关注我 Mybatis可以说是目前国内使用最广泛的ORM框架。最原始的使用方式下,我们将sql写在xml配置文件中,通过SqlSession,根据statementId来唯一指定要执行的s...

史上最详细mybatis与spring整合教程

点击上方"田守枝的技术博客",关注我 mybatis本身使用比较灵活,和spring整合也有多种方式。本文一网打尽mybatis与spring整合所有方式,让你彻底掌握mybatis与spring整合原理,堪称史上最全面...

消息中间件选型分析

点击上方"田守枝的技术博客",关注我 消息中间件选型分析 ——从Kafka与RabbitMQ的对比来看全局 有很多网友留言:公司要做消息中间件选型,该如何选?你觉得哪个比较好?消息选型的确是一个大...

深入理解数据库编程中的超时设置

点击上方"田守枝的技术博客",关注我 数据库是开发过程中最常用的组件,然而我们经常会遇到各种各样的超时异常,如: connect timeout:建立数据库连接超时 socket timeout:socket读取超时 ...

详解HTTP 与TCP中Keep-Alive机制的区别

点击上方"田守枝的技术博客",关注我 keepalive已经不是什么新鲜的概念了,HTTP协议中有keep-alive的概念,TCP协议中也有keep-alive的概念。二者的作用是不同的。本文将详细的介绍http中的k...

TCP粘包、拆包与通信协议详解

在TCP编程中,我们使用协议(protocol)来解决粘包和拆包问题。本文将详解TCP粘包和半包产生的原因,以及如何通过协议来解决粘包、拆包问题。让你知其然,知其所以然。 1 TCP粘包、拆包图解 由...

可靠消息一致性的奇淫技巧

点击上方"田守枝的技术博客",关注我 "可靠消息最终一致性"是为了解决Producer端的消息发送与本地事务执行的原子性问题,是一种柔性事务,属于异步确保型,软状态,最终一致。 问题典型场景是...

分布式事务:TCC两阶段异步补偿型

点击上方"田守枝的技术博客",关注我 提示:可能有人在公众号上看过这篇文章,这是我2018年2月份在我的博客上写的文章,现在搬到公众号上来,搬上来之前已经被其他公众号抄袭了,懒的投诉了。...

使用Atomikos实现JTA分布式事务

本文全面的介绍了JTA分布式事务模型和接口规范,以及开源的分布式事务解决方案Atomikos。笔者认同"talk is cheap,show me the code",因此在文章最后,给出一个完整的Atomikos与spring、myb...

mysql binlog应用场景与原理深度剖析

本文深入介绍Mysql Binlog的应用场景,以及如何与MQ、elasticsearch、redis等组件的保持数据最终一致。最后通过案例深入分析binlog中几乎所有event是如何产生的,作用是什么。 1 基于binlog的...

InnoDB MVCC 机制,看这篇就够了

作者:jiayangchen 来自:Young的博客(公众号) 提醒:喜欢记得右下角关注一波 本文详细的介绍了什么是MVCC?为什么要有MVCC?以及MVCC的内部实现原理:包括Undo Log的版本链是如何组织的,...

为什么String选择数字31作为hashCode方法乘子?

本文作者:田小波 个人博客:http://www.tianxiaobo.com 1. 背景 某天,我在写代码的时候,无意中点开了 String hashCode 方法。然后大致看了一下 hashCode 的实现,发现并不是很复杂。但是我...

2019/06/27 02:16
0
漫谈gRPC

本文概括性的介绍gRPC,包括gRPC的起源,核心特性,生态体系,以及一些知名开源软件对gRPC的使用,最后总结gRPC与netty、dubbo等框架的区别,目的是让读者从整体上对gRPC有一个相对全面的认知...

Netty高性能FastThreadLocal原理深度剖析

目前关于FastThreadLocal的很多文章都有点老有点过时了(本文将澄清几个误区),很多文章关于FastThreadLocal介绍的也不全,希望本篇文章可以带你彻底理解FastThreadLocal!!! FastThread...

[图文] Seata AT 模式分布式事务源码分析

AT 模式是 Seata 主推的分布式事务解决方案,最早来源于阿里中间件团队发布的 TXC服务,后来成功上云改名 GTS。相较于TCC而言,Seata的AT模式业务侵入性更低,易于接入。 本文作者:jiayang...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部