zookeeper-数据同步源码分析

在上一篇对 zookeeper 选举实现分析之后,我们知道 zookeeper 集群在选举结束之后,leader 节点将进入 LEADING 状态,follower 节点将进入 FOLLOWING 状态;此时集群中节点将进行数据同步操作,以保证数据一致。 只有数据同步完成之后 zookeeper 集群才具备对外提供服务的能力。 LEADING当节点...

date_range2019-05-09 bookmark_border zookeeper  

zookeeper-选举源码分析

在 zookeeper 集群中发生选举的场景有以下三种: 集群启动时 Leader 节点重启时 Follower 节点重启时 本文主要针对集群启动时发生的选举实现进行分析。 ZK 集群中节点在启动时会调用QuorumPeer.start方法 public synchronized void start() { /** * ...

date_range2019-04-20 bookmark_border zookeeper  

声网sdk体验-直播

概述直播如何实现的? 下面是基于声网 sdk 快速开发简单直播demo的实现。 功能设计 如上图所示为直播 Demo 实现的基本功能展示,包括: 主播端: 创建直播间 发布、取消发布视频 下播 浏览发送弹幕 访客端: 浏览直播间 观看直播 退出直播间 浏览发送弹幕 下面看下本次实现的简易架构图: 实现在实现之前我们需要创建 Ago...

date_range2019-04-14

重拾-Mybatis-Mapper文件解析

前言配置示例 使用相对于类路径的资源引用 <mappers> <mapper resource="org/mybatis/builder/AuthorMapper.xml"/> <mapper resource="org/mybatis/builder/BlogMapper.xm...

date_range2019-03-15 bookmark_border Mybatis  

重拾-MyBatis-配置文件解析

前言我们知道在使用 Mybatis 时,我们需要通过 SqlSessionFactoryBuild 去创建 SqlSessionFactory 实例,譬如: // resource 为 mybatis 的配置文件 InputStream inputStream = Resources.getResourceAsStream(resource); ...

date_range2019-03-14 bookmark_border Mybatis  

重拾-Spring Transaction

问题面试中是不是有时经常会被问到 “Spring 事务如何管理的了解吗?” ,“Spring 事务的传播性有哪些,能聊聊它们的使用场景吗?”, “事务回滚的时候是所有异常下都会回滚吗?”; 下面我们就带着这些问题来看看 Spring 事务是如何实现的吧。 实现分析首先我们还是先通过一个使用示例,先看下 Spring 事务是如何工作的。 使用示例 本...

date_range2019-03-05 bookmark_border Spring  

重拾-Spring AOP-自动代理

概述在上一篇 重拾-Spring AOP 中我们会发现 Spring AOP 是通过类 ProxyFactoryBean 创建代理对象,其有个缺陷就是只能代理一个目标对象 bean, 当代理目标类过多时,配置文件臃肿不方便管理维护,因此 Spring 提供了能够实现自动创建代理的类 BeanNameAutoProxyCreator , Defaul...

date_range2019-03-04 bookmark_border Spring  

重拾-Spring-AOP

AOP 术语关于 AOP 的概念描述及相关术语可以参考 彻底征服 Spring AOP 之 理论篇 总结的很好; 本文将着重分析下 AOP 的实现过程。 使用示例定义接口public interface UserService { void say (); } 接口实现类如下: public class UserServiceImpl i...

date_range2019-03-02 bookmark_border Spring  

LeetCode-数组-删除元素

题目描述给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 解题思路 本题解题思路与上一篇的删除有序数组重复元素类似,如下所示: 设...

date_range2019-03-01 bookmark_border LeetCode  

重拾-Spring IOC

为何重拾使用了 Spring 多年,但是对其底层的一些实现还是一知半解,一些概念比较模糊;故决定重新拾起,加深对 Spring 的认识。 重拾计划spring 版本说明Spring 在经过多年的演进过程中,其功能越来越丰富,组件越来越多;为了避免在阅读源码的过程中深陷泥潭中,决定采用最原始的版本 1.0; 但又不局限于 1.0 版本。 spring...

date_range2019-02-27 bookmark_border Spring