0%

TCP协议详解
众所周知,TCP协议是一个可靠的的协议,也是一个流量控制协议

Read more »

Netty是如今互联网最流行的java通讯库,在众多优秀组件 dubbo,grpc-java,jetty,RocketMQ中都使用了netty作为其通讯组件。
在netty的使用中,最常见的就是ByteBuf类,这个类最常见是由于其是字节数据的容器,白话一点就是存放字节数据的数组。
因为所有的网络通信最终都是基于底层的字节流传输,所以需要一个方便、易用的数据接口进行字节流的基本操作,正好ByteBuf提供了
基础的操作。

Read more »

Epoll是Linux系统中高性能IO的底层机制,由操作系统底层内核提供,Linux版本在2.6之后的版本才会有此功能及api暴露出来,应用层一般采用c或c++去编写。
本文主要讲述Netty源码中Epoll的实现原理和源码设计思想。

Read more »

前一篇文章我们讲述到rxjava2 的内部设计模式与原理机制,包括观察者模式和装饰者模式,其本质上都是rxjava2的事件驱动,那么本篇文章将会讲到rxjava2的另外一个功能:异步功能

Read more »

ReactiveX 响应式编程库,这是一个程序库,通过使用可观察的事件序列来构成异步事件驱动的程序。
其简化了异步多线程编程,在以前多线程编程的世界中,锁,可重入锁,同步队列器,信号量,并发同步器,同步计数器,
并行框架等都是具有一定的使用门槛,稍有不慎或者使用不成熟或对其源码理解不深入都会造成相应的程序错误和程序性能的低下。

Read more »

浅谈智能运维

现在智能运维很火,很热门,大家都在研究这个课题项目。在国内学术界,清华大学裴丹教授已经
研究此课题一年有余,也在APM大会上进行了相关落地的阐述。在国外工业界,SIGCOMM 2016大会,
微软提出基于数据中心的故障定位方案,先用实验床把所有可能故障都模拟一下,同时收集各类监控
指标,然后通过机器学习建立模型,这个模型可以根据实际发生的监控指标的症状, 推断根因的
大致位置,以便加速止损。 在相关文献中用到的基础算法包括随机森林,故障指纹构建,逻辑回归,
马尔科夫链,狄利克雷过程等方法来进行故障定位。

Read more »

聊聊微服务架构

微服务架构风格就是一种将单个应用拆分成一组小服务开发的方法,每一个小服务运行在它自己的进程中并且使用轻量的协议通信,通常是一个HTTP资源API。这些服务围绕业务能力构建并且由自动化部署机器部署。这些服务有着最小化的中央管理,这个中央管理可以使用不同语言编写并使用不同的数据存储技术。
———— James Lewis and Martin Fowler

Read more »

小记

Google Chubby的作者Mike Burrows说过,there is only one consensus protocol, and that’s “Paxos” – all other approaches are just broken versions of Paxos. 意即世上只有一种一致性算法,那就是Paxos,所有其他一致性算法都是Paxos算法的不完整版。这也是本博客的主题。

Read more »

小记

一个人坐在实验室里,四下无人,突然感觉17年来的如此之快,想写点什么,一琢磨那就来个年末总结吧,其实早就想写这篇年末总结,无奈拖到今天。。。
2016过得很快,眨眼间就过去了,诠释了时间的如驹过隙。依稀记得今年还是实习的一年,依稀记得实习期间发生的种种,又依稀记得2015年自己还没入学,依稀记得自己刚入学时执迷于数据分析,一眨眼就17年了,自己成长了许多,技术得到了长进,渐渐找到了自己的方向,再也没了当初的迷茫青涩。

Read more »