摘要: 1、单一职责原则 解释:一个类只做它该做的事情。 2、开\闭原则 解释:开放扩展、关闭修改。 3、里氏替换原则 解释:任何父类出现的地方都可以替换为其子类。 4、依赖倒置原则 解释:面相接口编程。 5、接口隔离原则 解释:接口小而专,不能大而全。 6、合并\聚合复用原则 解释:优先使用合并或者聚合实 阅读全文
posted @ 2019-10-14 10:53 longc-pub 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 1、类加载过程 类的生命周期会经历 加载 -> 验证 -> 准备 -> 解析 -> 初始化 -> 使用 -> 卸载 几个阶段,其中验证、准备、解析合并称作连接。类的加载过程会经历加载、连接、初始化三个阶段。 下面我们来分别总结一下每个阶段的工作 加载(loading)是将类对应的class文件读取到 阅读全文
posted @ 2019-09-28 01:51 longc-pub 阅读(123) 评论(0) 推荐(0) 编辑
摘要: Redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持四种持久化方式,一是 Snapshotting(快照)也是默认方式;二是Append-only file(缩写aof)的方式;三是虚拟内存方式;四是diskstore方式。下面分别介 阅读全文
posted @ 2019-08-02 15:47 longc-pub 阅读(1941) 评论(0) 推荐(0) 编辑
摘要: 1、string string 是 redis 最基本的数据类型,一个 key 对应一个 value,最大能存储 512MB。string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。 示例: 2、hash hash是键值对的形式,类似java中的map。每个 has 阅读全文
posted @ 2019-08-02 13:46 longc-pub 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 先决条件 适用于支持的任一 Linux 分发版的 Docker 引擎 1.8 以上版本,或适用于 Mac/Windows 的 Docker。 有关详细信息,请参阅 Install Docker(安装 Docker)。 Docker overlay2存储驱动程序。 这是大多数用户的默认设置。 如果发现 阅读全文
posted @ 2019-07-30 11:00 longc-pub 阅读(13004) 评论(0) 推荐(0) 编辑
摘要: MacOS Docker 安装 使用 Homebrew 安装 macOS 我们可以使用 Homebrew 来安装 Docker。 Homebrew 的 Cask 已经支持 Docker for Mac,因此可以很方便的使用 Homebrew Cask 来进行安装: 在载入 Docker app 后, 阅读全文
posted @ 2019-07-30 10:54 longc-pub 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 1、用法示例 (1)join是Thread提供的线程间协作的方法,通过查看代码可知是通过自旋wait实现的,使用方法比较简单,直接调用线程的join方法就会进入wait状态,直到该线程 !isAlive() 跳出循环,从而保证线程的执行顺序,适用于线程间执行的逻辑有依赖的情况。具体代码如下: 具体使 阅读全文
posted @ 2019-07-16 15:43 longc-pub 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 转自:https://blog.csdn.net/tyyj90/article/details/78236053 1.简介锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等 ) 。 2.Java锁的种类公平锁/非公平锁可重入 阅读全文
posted @ 2019-07-10 12:14 longc-pub 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 转自:https://www.cnblogs.com/dolphin0520/p/3932921.html 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大 阅读全文
posted @ 2019-07-07 11:53 longc-pub 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 转自:https://www.cnblogs.com/wxd0108/p/5479442.html 引 如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。 用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个 阅读全文
posted @ 2019-07-05 23:05 longc-pub 阅读(195) 评论(0) 推荐(0) 编辑