记忆碎片

不知道自己的无知,乃是双倍的无知。

排序:
默认
按更新时间
按访问量

伪共享、缓存行填充以及CPU缓存机制

    关于伪共享的一篇好文,转载自: https://blog.csdn.net/karamos/article/details/80126704 1.认识CPU Cache CPU Cache概述 随着CPU的频率不断提升,而内存的访问速度却没有质的突破,为了弥补访问内存的速度慢,...

2018-09-14 13:33:59

阅读数:98

评论数:0

你真的了解java的lambda吗?- java lambda用法与源码分析

from:https://www.cmlanche.com/2018/07/22/lambda%E7%94%A8%E6%B3%95%E4%B8%8E%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90/ 用法 示例:最普遍的一个例子,执行一个线程 new Thread(...

2018-08-20 20:50:59

阅读数:98

评论数:1

intellij idea使用git stash暂存一次提交

分享一个小技巧: 在日常开发中有时候需要切换到另外的一个分支,但在某些条件下当前的分支上存在一些文件尚未提交,这时候就需要使用到idea自带的git stash功能来"暂存"一些尚未提交的文件,待切换到另外的分支上再提交到新的分支上去。 任意打开一个项目进行...

2018-07-31 21:46:21

阅读数:655

评论数:0

Kubernetes文件挂载问题

当我们将应用打包成docker镜像并发布时,可能会有替换掉内部配置文件的需求,有别于docker中自带的文件挂载功能,Kubernetes挂载配置文件的时候会覆盖掉原有的文件。这里,我们可以通过创建一个符号链接来挂载宿主机上的配置文件。首先,执行以下的命令来创建一个configmap:kubect...

2018-07-05 22:04:46

阅读数:1067

评论数:0

redis lua脚本学习

在实际的项目开发中,使用lua脚本能够减少对于redis的访问次数,提高效率,下面通过一个入门级的例子来对redis中的lua脚本进行介绍:public class RedisTemplateLua { public static void main(String[] args) { ...

2018-05-13 21:33:37

阅读数:234

评论数:0

分布式一致性算法Paxos介绍

原文地址PAXOS可以用来解决分布式环境下,选举(或设置)某一个值的问题(比如更新数据库中某个user的age是多少)。分布式系统中有多个节点就会存在节点间通信的问题,存在着两种节点通讯模型:共享内存(Shared memory)、消息传递(Messages passing),Paxos是基于消息...

2018-05-13 17:09:38

阅读数:172

评论数:0

源码分析shiro认证授权流程

原文地址: https://www.cnblogs.com/davidwang456/p/4428421.html 1. shiro介绍 Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能: 认证 - 用户身份识别,常被称为用户“登录”;授权...

2018-05-01 16:33:13

阅读数:141

评论数:0

EnumSet源码解析

EnumSet表示一个枚举类的集合,而且这个集合中只包含同一种枚举类的对象,下面来看一下这个类型的使用方法: 首先定义一个枚举类: public enum Color { RED("红色",0),BLUE("蓝色",2),ORANGE("...

2018-04-22 23:25:19

阅读数:108

评论数:0

对于ConcurrentHashMap源码的浅要分析

JDK版本:1.8 1.重要的属性: private static final int MAXIMUM_CAPACITY = 1 << 30;//最大容量,默认为2^30,int型最大2^32,因为最高的两位有其他的用途,所以是2^30,这在源码的注释里边亦有所提及 private...

2018-04-15 23:32:16

阅读数:125

评论数:0

Spring Boot 2.0 新特性和发展方向

以Java 8 为基准Spring Boot 2.0 要求Java 版本必须8以上, Java 6 和 7 不再支持。内嵌容器包结构调整为了支持reactive使用场景,内嵌的容器包结构被重构了的幅度有点大。EmbeddedServletContainer被重命名为WebServer,并且org....

2018-02-28 15:17:57

阅读数:22347

评论数:3

享元模式

1.使用场景: 内存资源比较稀缺,不要随便浪费,如果有很多相同或者类似的对象,通过使用享元模式的方法,节省内存,例如线程池以及String类等。 2.UML表示 在享元模式中通常用以下的几类对象: 2.1FlyweightFactory(享元工厂,创建并且管理享元对象) 2.2FlyWe...

2018-02-19 16:40:37

阅读数:170

评论数:0

组合模式

1.使用场景: 部分和整体之前通过树状结构进行显示,调用者需要达到可以使用统一的方式处理部分对象以及整体对象的目的。 2.UML表示 组合模式主要包括下面的几个角色: 2.1抽象构件:定义叶子和容器构件的共同点。 2.2叶子构件。 2.3容器构件:能够包含子节点。 具体的UML示意图...

2018-02-19 16:36:33

阅读数:131

评论数:0

桥接模式

1.使用场景:分离两个变化的维度,通过组合的方式来减少系统中臃肿繁琐的代码,例如JDBC中的驱动程序。2.UML表示:2.1 实现(Implementor):定义具体行为,具体特征的应用接口。2.2 具体实现(ConcreteImplementor):实现Implementor。2.3 目标接口(...

2018-02-19 16:28:21

阅读数:105

评论数:0

外观模式

1.使用场景: 为子系统提供一个统一的入口。封装子系统的复杂性,便于客户调用,常用于一些工具类的封装。 2.UML表示 外观模式包含如下两个角色: (1) Facade(外观角色):在客户端可以调用它的方法,在外观角色中可以知道相关的(一个或者多个)子系统的功能和责任;在正常情况下,它将所...

2018-02-18 17:01:49

阅读数:87

评论数:0

代理模式

1.使用场景: 需要为其他的对象提供一种代理,来控制该对象的访问。Spring中的AOP技术就使用了代理模式。 2.UML表示 代理模式种有以下的几种对象: 2.1.抽象角色 包含有代理角色和真实角色的公共对外方法。 2.2.真实角色 真实抽象角色,定义真实角色需要实现的一些业务逻辑...

2018-02-18 16:54:47

阅读数:122

评论数:0

装饰模式

1.使用场景: 在已有的功能上边需要动态的添加新的功能。 2.UML表示 在装饰器模式中通常用以下的几类对象: 抽象构件角色(Project):给出一个接口,以规范准备接收附加责任的对象 具体构件角色(Employe):定义一个将要接收附加责任的类 装饰角色(Manager):持有一个...

2018-02-18 16:47:46

阅读数:83

评论数:0

适配器模式

1.使用场景: 由于接口不兼容,需要通过“适配器”来进行协调工作。 2.UML表示 适配器模式中总共有3种角色: 2.1目标接口 客户期待的接口。目标可以是具体的或抽象的类,也可以是接口。 2.2需要适配的类 需要适配的类或者适配者类。 2.3适配器 通过包装一个需要适配的对象,...

2018-02-18 16:43:00

阅读数:143

评论数:0

解释器模式

1.使用场景: 这个设计模式一般用来解释语句中的句子,实际开发中EL表达式或者正则表达式的解释器就是采用这种设计模式等。 2.UML表示 Expression:抽象表达式,用来表明所有具体表达式需要实现的抽象接口。 Terminal Expression:终结符表达式,实现了抽象表达式所要...

2018-02-18 16:38:09

阅读数:114

评论数:0

访问者模式

1.使用场景: 在一个集合中有一些不同的子类对象,需要分别对这些子类对象做处理。常常应用于XML文档的解析、编辑器的解析等。 2.UML表示: 2.1 Visitor(抽象访问者):抽象访问者为对象结构中每一个具体元素类ConcreteElement声明一个访问操作,从这个操作的名称或参数类...

2018-02-18 16:32:46

阅读数:81

评论数:0

状态模式

1.使用场景: 常见的应用场景有线程对象各个状态之间的切换或者各种账号状态的管理等 2.UML表示 状态模式中主要有以下的几大角色: 2.1Context:环境类 环境类中维护一个State对象,定义了当前的对象 2.2State:抽象状态类 2.3ConcreteState:具体状...

2018-02-18 16:26:24

阅读数:80

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭