240 发简信
IP属地:辽宁
  • LambdaMetafactory(fastjson2使用的黑科技)

    前言 前段时间遇到一个需求,对接多方接口数据(同类数据但字段命名各异)转换为字段一致的标准化数据。 这个需求给我带来思考,因为接口很多且不确定,还在陆续增多,而且接口是有变化...

  • 关于直接内存(DirectMemory)

    前言 关于直接内存、零拷贝等技术和原理,之前有认真了解过,但是没有直接尝试使用并测试过。 直到最近项目中真实遇到一个jvm直接崩溃的问题,所以才有了本篇的记录,也借此机会认真...

  • 120
    一文通透TCP/IP五层模型

    前言 关于网络知识,一直以来都是一知半解,悔于大学期间没有好好学习。 因此这次抽出一段时间,彻底的搞清楚网络知识,从ISO七层模型(实际上是TCP/IP五层模型)一层层往上,...

  • 120
    GOSSIP通俗演绎

    前言 前两篇文章分别介绍了Paxos和Raft,本篇将介绍另一种公式协议:Gossip协议 Paxos和Raft都是强一致性协议(各个节点之间的数据可能短期,但一定保证对外的...

  • 120
    RAFT的通俗演绎

    前言 上文以通俗的方式介绍了PAXOS[https://www.jianshu.com/p/905f3bf68fb2],但 PAXOS 更偏向于理论模型,许多实现层面的细节都...

  • 120
    Paxos的通俗演绎

    前言 说是前言,其实这里是最后写的,我在写这篇文章前看过了不少网上文章,也直接读了lamport关于paxos的原始论文,能记住paxos的规则,但始终感觉复杂难懂,无法融会...

  • 120
    分布式架构的“集权”与“公治”

    前言 分布式数据库和中间件的架构设计,核心就是围绕 “中心化” 和 “去中心化” 这两种思想展开,两种模式各有适用场景和优缺点 其中“中心化”显著特点就是有一个明确的主节点/...

  • @网文备份转word 还一夫多妻呢

    肝了三晚,终于吃透了Druid连接池

    前言 作为一个java程序员,数据库的JDBC几乎每天都在做,数据库连接池Druid每天也在使用,但可能用起来太简单了(spring中引入依赖即可),往往忽略了连接池的意义和...

  • 全靠各种后置处理器,超级灵活,设计的太牛逼了

    一文通透spring的初始化

    简述 今天重点分析ApplicationContext初始化时做的事情,我们都只到spring是个IOC和AOP容器,那再我们new一个ApplicationContext,...

  • 120
    MQ系列之ROCKETMQ

    RocketMQ介绍 RocketMQ是阿里巴巴开源的一个消息中间件,在阿里内部历经了双十一等很多高并发场景的考验,能够处理亿万级别的消息。2016年开源后捐赠给Apache...

  • 120
    MQ系列之KAFKA

    Kafka简介 kafka最早是由LinkedIn开发的,最开始是为了做海量日志收集用的,所以它的设计目标是高吞吐量,高性能。但它的功能就相对单一,因为它最初只需做好这一件事...

  • 180
    pq217 ·

    为了啃懂ThreadPoolExecutor,从0到1仿写,还揪出临时worker抢任务的不合理,改出动态淘汰策略,太牛的学习姿势了!虽简化但抓住了核心,给认真拆解源码的你点赞

  • 120
    MQ系列之RabbitMQ

    主流MQ对比 优点缺点适用场景Kafka吞吐量非常大,性能非常好,技术生态完整功能比较单一分布式日志收集,大数据采集RabbitMQ消息可靠性高,功能全面吞吐量较低。消息积压...

  • 120
    宽表数据库之Cassandra

    前言 在宽表领域,Cassandra和Hbase都是排名前两的数据库,本文主要介绍Cassandra的一些基本概念和特性,并与Hbase进行对比 去中心化 Cassandra...

  • 120
    宽表数据库之Hbase

    基本概念 hbase使用hdfs存储数据,使用zookeeper进行协调管理 column family(列族) 列族是表的垂直切分 所谓列族就是把列(column)分组,按...

  • 120
    JVM内存模型和垃圾回收器

    前言 JVM垃圾回收器的相关知识已经学了好几年了,但一直没有将学习内容记录下来,由于工作中需要jvm调优场景也不多,所以很容易就忘记了,所以就决定将学习内容记录下来,以备以后...

  • 120
    刨析限流的常用算法

    前言 在高并发场景下,为避免系统被压垮,经常会采用限流的方式来控制流量,这对系统的稳定性和可靠性至关重要,限流有很多成熟的解决方案,例如Hystrix,今天不聊Hystrix...

  • 120
    分布式寻址算法(Redis槽位定算法)

    前言 分布式缓存常见的寻址算法如下: hash算法 一致性hash hash slot 其中redis使用hash slot方法进行寻址,也就是大名鼎鼎的槽位定算法,本文逐一...

  • Skywalking源码研究之上报和采集

    关于Agent端的上报和OAP的采集,Skywalking技术比较成熟,重点关注插件在拦截器中如何进行上报 ContextManager 插件进行数据上报(上传span),主...

  • 120
    Skywalking源码研究之agent插件与链路监控

    插件 紧接skywalking-agent初始化, skywalking使用微内核架构,对每一种框架的支持都是通过插件形式实现的 使用bytebuddy可以非常友好的进行切面...