Spring源码核心剖析
SpringAOP作为Spring最核心的能力之一,其重要性不言而喻。然后需要知道的是AOP并不只是Spring特有的功能,而是一种思想,一种通用的功能。而SpringAOP只是在AOP的基础上将能力集成到SpringIOC中,使其作为bean的一种,从而我们能够很方便的进行使用。
Stella981 Stella981
4年前
AFNetworking源码分析
不用网络框架进行网络请求NSURLConnection的简单使用(下面的代码均只为了演示,更详细的使用方法请自行谷歌)NSURLConnection提供了两个类方法用于发起同步或异步请求,对于异步请求来说必然是在子线程中发起,若在主线程中发起异步网络请求会造成主线程阻塞,界面无响应,这就涉及到多线程编程。但多线程编程
Easter79 Easter79
4年前
TiDB 新特性漫谈:从 Follower Read 说起
作者:黄东旭很久没有写文章了,正好今天有一些闲暇的时间,写写最近的一些Update。关注TiDB的同学,最近可能注意到TiKV这边合并了一个不大不小的PR5051(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.com%2Ftikv%2Ftikv%2Fp
Stella981 Stella981
4年前
Spark源码剖析(八):stage划分原理与源码剖析
引言对于Spark开发人员来说,了解stage的划分算法可以让你知道自己编写的sparkapplication被划分为几个job,每个job被划分为几个stage,每个stage包括了你的哪些代码,只有知道了这些之后,碰到某个stage执行特别慢或者报错,你才能快速定位到对应的代码,对其进行性能优化和排错。stage划分原理与源码
Easter79 Easter79
4年前
ThreadLocal 原理和使用场景分析
ThreadLocal不知道大家有没有用过,但至少听说过,今天主要记录一下ThreadLocal的原理和使用场景。使用场景直接定位到ThreadLocal的源码,可以看到源码注释中有很清楚的解释:它是线程的局部变量,这些变量只能在这个线程内被读写,在其他线程内是无法访问的。ThreadLocal定义的通常是
Stella981 Stella981
4年前
Redis持久化的几种方式——深入解析RDB
Redis 的读写都是在内存中,所以它的性能较高,但在内存中的数据会随着服务器的重启而丢失,为了保证数据不丢失,我们需要将内存中的数据存储到磁盘,以便Redis重启时能够从磁盘中恢复原有的数据,而整个过程就叫做Redis持久化。!image.png(https://oscimg.oschina.net/oscnet/232e657dae2
Wesley13 Wesley13
4年前
VIM使用YCM注意事项
本文假设你已经安装好了YCM并且实际使用了,在实际使用中遇到的一两个问题的讨论。YCM与Normal模式大家知道在Vim中从insert到normal有三种方式:Esc,Ctrlc,Ctrl由于普通键盘的Esc键位摆放问题用着并不顺手,这时候大家可能会选择后两种方式,但是其中Ctrl
Stella981 Stella981
4年前
Hadoop学习笔记(概述)
Apachehadoop是什么? 可靠的,可扩展的分布式计算软件。(1)可使用简单的编程模型来分布式计算集群中的大量数据集。(2)可从一台服务器扩展到数千台服务器的计算和存储(3)在应用层面发现并处理错误Hadoop项目的几大模块(1)HadoopCommon: 支持其他hadoop模块的通用
Wesley13 Wesley13
4年前
CSS 埋点统计
CSS埋点统计当一个网站或者App的规模达到一定程度,需要分析用户在App或者网站的相应操作,则需要埋点统计用户行为,这个不用多说,具体实现有JS脚本写好埋点事件并调接口,今天get到一种新的埋点统计方式保证耳目一新。下面代码简单示范一下。//index.html<!DOCTYPE
Wesley13 Wesley13
4年前
git ignore files配置
方式一在仓库目录下新建一个名为.gitignore的文件(因为是点开头,没有文件名,没办法直接在windows目录下直接创建,必须通过右键GitBash,按照linux的方式来新建.gitignore文件)。.gitignore文件对其所在的目录及所在目录的全部子目录均有效。通过将.gitignore文件添加到仓库,其他开发者更新该文件到