摘要: 一、git reset 和 git checkout git reset [commit] 重置为[commit]所对应节点的提交(通过移动分支指针和HEAD指针实现),如果不指定[commit]则默认为HEAD--soft 工作区和暂存区不变,重置仓库--mixed 工作区不变,重置暂存区和仓库, 阅读全文
posted @ 2018-04-07 13:05 空の彼方 阅读(778) 评论(0) 推荐(0) 编辑
摘要: 安装前准备 删除旧版本: 安装依赖: 下载并安装 将git命令添加到bash中 在最后一行加入: 刷新profile: 阅读全文
posted @ 2018-04-06 15:56 空の彼方 阅读(109) 评论(0) 推荐(0) 编辑
摘要: Java的三种代理模式 1.代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能.这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需改修改 阅读全文
posted @ 2018-04-02 17:06 空の彼方 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 一、下载、解压并安装 make install 后会在 /usr/local/bin 目录下生成相关的redis可执行文件,运行即可直接启动。 二、配置 Redis 为系统服务 1、首先建2个文件夹 第一个文件夹用于存放redis配置文件,第二个文件夹用于存放6379端口号对应的redis实例所生成 阅读全文
posted @ 2018-03-26 23:40 空の彼方 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。 1 下载并安装MySQL官方的 Yum Repository 使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子 阅读全文
posted @ 2018-03-26 01:13 空の彼方 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问。对于final域,编译器和处理器要遵守两个重排序规则: 下面,我们通过一些示例性的代码来分别说明这两个规则: 这里假设一个线程A执行writer ()方法,随后另一个线程B执行reader ()方法。下面我们通过这两 阅读全文
posted @ 2018-03-22 10:45 空の彼方 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。 另外,说ThreadLocal使得各线程能够保持各自独立的一个对象,并 阅读全文
posted @ 2018-03-21 09:59 空の彼方 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 什么是CAP定理 CAP定理指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。在分布式系统中,分区容错性是必须需要实现的。所以只能在一致性和可用性之间进行权衡(AP或者CP) 单机R 阅读全文
posted @ 2018-03-20 00:16 空の彼方 阅读(465) 评论(0) 推荐(0) 编辑
摘要: redis默认只允许本地访问,要使redis可以远程访问可以修改redis.conf 打开redis.conf文件在NETWORK部分有说明 ################################## NETWORK #################################### 阅读全文
posted @ 2018-03-18 17:05 空の彼方 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 单例模式分为非延迟加载(饿汉式)和延迟加载(懒汉式),延迟加载可以有效提高系统资源的利用效率,所以通常使用延迟加载来实现。 一、通过双重检查锁实现 对于延迟加载,如果在整个返回单例对象的方法上加同步锁(synchronized),系统开销较大,因此可以通过双重检查锁(DCL)来实现。 注意这里的vo 阅读全文
posted @ 2018-03-16 16:09 空の彼方 阅读(503) 评论(0) 推荐(0) 编辑