zhangtao's Blog

好记性不如烂笔头

学习ddd(一)--领域驱动设计相关概念

我之前一直对领域驱动设计(DDD)相关的知识有零散的认识,没有系统性地学习过。最近抽空系统地学习了一下,发现这块知识比较抽象,很难读懂。加上

模板模式实现分布式锁实战

前言 分布式锁相信大家都有用过,常见的分布式锁实现方式例如redis、zookeeper、数据库都可以实现,而我们代码中强引用这些分布式锁的代

注册中心ZK、nameServer、eureka、Nacos介绍与对比

前言 注册中心的由来 微服务架构是存在着很多跨服务调用,每个服务都存在着多个节点,如果有多个提供者和消费者,当提供者增加/减少或者消费者增加/减

设计模式之责任链模式

1.定义 责任链模式是常见的行为型设计模式。当我们需要实现的业务逻辑需要通过多个步骤来处理,并且这些步骤有排列组合的场景时,就可以使用责任链模

记一次死锁问题

最近在做一个需求,碰到了死锁的问题,记录下解决问题的过程 背景 这个需求要改动一个接口,我这边称为A接口,原先的逻辑是A接口内部会调用c方法,c

记一次线上oom排查过程

故障 线上pda服务器出现卡慢,由于pda服务器主要是只是做了网关路由的服务,于是我们猜测是某个下游服务出现了问题,通过elk查看慢请求发现基

从位运算理解位图,位掩码

位图是一种较难理解的数据结构,想了解位图,我需要先温习一下基础,复习下一些二进制的知识 1个字节=8个二进制位 二进制每逢二进一,下面是二进制对

优雅数据同步--canal实现mysql同步demo

当需要两张表数据同步的时候,我们会想到几种方案? 最简单的一种方式就是触发器的方式。例如A同步到B,可以通过下面的sql来添加触发器 create trigger tri_trade_update after UPDATE

消息队列的坑(重复消费、顺序消费、消息丢失)

1.rabbitmq erlang语言开发,时效性最高 2.rocketmq 吞吐量高,时效性高,实现了事务消息,但在大数据方面需要自己写代码支持 3.kafka 超高的吞吐量,消息较少时可能会有延

设计模式之观察者模式

观察者模式是我现在公司用的很广泛的一种设计模式,同时也十分好用,下面我推荐给大家 首先我们要明白为什么需要观察者模式,我们举个例子分析。比如我