Java并发-线程基础 发表于 2020-07-01 | 分类于 java 基础概念进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。 线程是操作系统能够进行运算调度的最小单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 线程分类分为用户线程和守护线程。 线程上下文切换对于单核CPU来说(对于多核C ... 阅读全文 »
Redis数据类型的使用场景 发表于 2020-03-12 | 分类于 Redis Stringget/set mget/mset说明:设置/批量设置键值信息,value可以是任何形式的字符串 用法: set key value get key 场景: 常规缓存使用方式 incr/decr说明:将key中的数值增/减1,如果key不存在会先初始化为0再加1,该操作是原子性的 用法: ... 阅读全文 »
GitFlow实践 发表于 2020-02-16 | 分类于 Git 什么是GitFlow就像代码规范一样,Git Flow是一套代码管理时的行为规范。 为什么需要GitFlow存在问题 多人开发版本管理混乱 多个功能开发版本管理难 不同环境版本管理混乱 版本分支众多命名混轮 其他等等… GitFlow规范先看流程图如下: 常用分支master分支用来保存线上已发 ... 阅读全文 »
ZooKeeper介绍 发表于 2020-01-31 | 分类于 ZooKeeper 简介它是一个分布式服务框架,是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题如:数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、配置维护,名字服务、分布式同步、分布式锁和分布式队列等功能。 一致性:数据一致性,数 ... 阅读全文 »
Hexo生成sitemap 发表于 2020-01-31 | 分类于 hexo sitemap 的生成和提交sitemap可方便网站管理员通知搜索引擎他们网站上有哪些可供抓取的网页。最简单的sitemap形式,就是XML 文件,在其中列出网站中的网址以及关于每个网址的其他元数据(上次更新的时间、更改的频率以及相对于网站上其他网址的重要程度为何等,以便搜索引擎可以更加智能地抓取网 ... 阅读全文 »
Java集合框架-LinkedList源码分析 发表于 2020-01-29 | 分类于 java 一、类关系图 LinkedList是基于双向链表实现的,下面简单回顾相应下数据结构基本概念。 什么是线性表?线性表是具有相同特性的数据元素的一个有限序列 线性表分类1.顺序存储,如数组 2.链式存储,如链表 什么是链表?1.链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链 ... 阅读全文 »
Java集合框架-Vector源码分析 发表于 2020-01-28 | 分类于 java 一、类关系图 Vector实现同ArrayList差不多,方法里多了synchronized进行同步。 二、源码分析初始化1234567891011121314151617181920protected Object[] elementData;protected int capacityIncre ... 阅读全文 »
Java集合框架-ArrayList源码分析 发表于 2020-01-22 | 分类于 java 一、类关系图 标记接口看类实现RandomAccess接口,则表明该类支持快速随机访问 RandomAccess是一个标记接口,表明实现这个这个接口的 List 集合是支持快速随机访问的 随机访问 在计算机科学中,随机访问(RandomAccess)是从大量的可寻址元素的数据中访问任何元素大致和 ... 阅读全文 »
Java集合框架-迭代器 发表于 2020-01-21 | 分类于 java 一、概述Java集合框架的集合类因为内部结构不同,为了对容器内元素操作更为简单引入了迭代器模式。 迭代器模式就是提供一种方法对一个容器对象中的各个元素进行访问,而又不暴露该对象容器的内部细节。 Collection 继承了 Iterable 接口,其中的 iterator() 方法能够产生一个 It ... 阅读全文 »