SOFABolt 是一个轻量级、高性能、易用的远程通信框架,基于netty4.1,由蚂蚁金服开源。

本系列博客会分析 SOFABolt 的使用姿势,设计方案及详细的源码解析。后续还会分析 SOFABolt 的最佳实践 SOFARPC 的设计和实现

SOFABolt 源码分析1 - 最简使用姿势
SOFABolt 源码分析2 - RpcServer 服务端启动设计
SOFABolt 源码分析3 - RpcClient 客户端启动设计
SOFABolt 源码分析4 - Sync 同步通信方式设计
SOFABolt 源码分析5 - Oneway 单向通信方式设计
SOFABolt 源码分析6 - Future异步通信方式设计
SOFABolt 源码分析7 - Callback 异步通信方式设计
SOFABolt 源码分析8 - RemotingCommand 命令协议的设计
SOFABolt 源码分析9 - UserProcessor 自定义处理器的设计
SOFABolt 源码分析10 - 精细的线程模型的设计
SOFABolt 源码分析11 - Config 配置管理的设计
SOFABolt 源码分析12 - Connection 连接管理设计
SOFABolt 源码分析13 - Connection 事件处理机制的设计
SOFABolt 源码分析14 - Connection 连接监控机制的设计
SOFABolt 源码分析15 - 双工通信机制的设计
SOFABolt 源码分析16 - 上下文机制的设计
SOFABolt 源码分析17 - Heartbeat 心跳机制的设计
SOFABolt 源码分析18 - Protocol 私有协议的设计
SOFABolt 源码分析19 - Codec 编解码设计
SOFABolt 源码分析20 - Serializer 序列化机制设计

SOFABolt 源码分析21 - 超时与快速失败机制的设计

SOFABolt 源码分析22 - 优雅停机机制的设计

SOFABolt 设计总结 - 优雅简洁的设计之道

SOFABolt 源码分析的更多相关文章

  1. ABP源码分析一:整体项目结构及目录

    ABP是一套非常优秀的web应用程序架构,适合用来搭建集中式架构的web应用程序. 整个Abp的Infrastructure是以Abp这个package为核心模块(core)+15个模块(module ...

  2. HashMap与TreeMap源码分析

    1. 引言     在红黑树--算法导论(15)中学习了红黑树的原理.本来打算自己来试着实现一下,然而在看了JDK(1.8.0)TreeMap的源码后恍然发现原来它就是利用红黑树实现的(很惭愧学了Ja ...

  3. nginx源码分析之网络初始化

    nginx作为一个高性能的HTTP服务器,网络的处理是其核心,了解网络的初始化有助于加深对nginx网络处理的了解,本文主要通过nginx的源代码来分析其网络初始化. 从配置文件中读取初始化信息 与网 ...

  4. zookeeper源码分析之五服务端(集群leader)处理请求流程

    leader的实现类为LeaderZooKeeperServer,它间接继承自标准ZookeeperServer.它规定了请求到达leader时需要经历的路径: PrepRequestProcesso ...

  5. zookeeper源码分析之四服务端(单机)处理请求流程

    上文: zookeeper源码分析之一服务端启动过程 中,我们介绍了zookeeper服务器的启动过程,其中单机是ZookeeperServer启动,集群使用QuorumPeer启动,那么这次我们分析 ...

  6. zookeeper源码分析之三客户端发送请求流程

    znode 可以被监控,包括这个目录节点中存储的数据的修改,子节点目录的变化等,一旦变化可以通知设置监控的客户端,这个功能是zookeeper对于应用最重要的特性,通过这个特性可以实现的功能包括配置的 ...

  7. java使用websocket,并且获取HttpSession,源码分析

    转载请在页首注明作者与出处 http://www.cnblogs.com/zhuxiaojie/p/6238826.html 一:本文使用范围 此文不仅仅局限于spring boot,普通的sprin ...

  8. ABP源码分析二:ABP中配置的注册和初始化

    一般来说,ASP.NET Web应用程序的第一个执行的方法是Global.asax下定义的Start方法.执行这个方法前HttpApplication 实例必须存在,也就是说其构造函数的执行必然是完成 ...

  9. ABP源码分析三:ABP Module

    Abp是一种基于模块化设计的思想构建的.开发人员可以将自定义的功能以模块(module)的形式集成到ABP中.具体的功能都可以设计成一个单独的Module.Abp底层框架提供便捷的方法集成每个Modu ...

随机推荐

  1. 关于mac远程链接window服务器以及实现共享文件

    要最近换了新电脑mac 虽然运行速度666  但是真的很多地方都使用不习惯 这里记录一下 关于 远程链接window主机的问题 方便以后用 首先是 链接: 在应用里 找到    然后类似于  wind ...

  2. 实践出真知-所谓"java没有指针",那叫做引用!

    java没有指针,那我们如何实现动态数组呢? 上篇评论提及 ”不仅有vector,还有ArrayList,还有List,可做选择“. "java没有指针",那叫做引用! 今天尝试了 ...

  3. URL简介

    一般来说,http请求都会和URL地址有关,那么今天就来说说URL的组成部分. 实例:http://192.168.1.12/phpwind/searcher.php?keyword=phpwind& ...

  4. Machine Learning 神器 - sklearn

    Sklearn 官网提供了一个流程图, 蓝色圆圈内是判断条件,绿色方框内是可以选择的算法: 从 START 开始,首先看数据的样本是否 >50,小于则需要收集更多的数据. 由图中,可以看到算法有 ...

  5. eclipse里面svn比较之前版本的代码

    team——显示资源历史记录比较

  6. union排序,起别名将两个不同的字段ZCDZ,SCJYDZ 变成同一个别名dz,进行排序;增加一个字段z,进行排序。

    with a as( select NSRSBH,NSRMC,ZGSWJ_DM,ZGSWSKFJ_DM,SSGLY_DM,FDDBRXM,ZCDZ dz,1 z from hx_dj.dj_nsrxx ...

  7. 00-JAVA语法基础--动手动脑

    1.运行EnumTest.java,并分析结果,得出结论. 其源代码以及运行结果截图如下: 枚举类型的常量以字符串的形式顺序储.源代码中s和t不是原始数据类型.getCLass():取得当前对象所属的 ...

  8. BZOJ 4260 Codechef REBXOR (区间异或和最值) (01字典树+DP)

    <题目链接> 题目大意:给定一个序列,现在求出两段不相交的区间异或和的最大值. 解题分析: 区间异或问题首先想到01字典树.利用前缀.后缀建树,并且利用异或的性质,相同的两个数异或变成0, ...

  9. B. Divisiblity of Differences

    B. Divisiblity of Differencestime limit per test1 secondmemory limit per test512 megabytesinputstand ...

  10. 聊聊微服务熔断降级Hystrix

    在现在的微服务使用的过程中,经常会遇到依赖的服务不可用,那么如果依赖的服务不可用的话,会导致把自己的服务也会拖死,那么就产生了熔断,熔断顾名思义就是当服务处于不可用的时候采取半开关的状态,达到一定数量 ...