关闭

Redis事件订阅和持久化存储

3-4、事件功能和配置项 Redis从2.X版本开始,就支持一种基于非持久化消息的、使用发布/订阅模式实现的事件通知机制。所谓基于非连接保持,是因为一旦消息订阅者由于各种异常情况而被迫断开连接,在其重新连接后,其离线期间的事件是无法被重新通知的(一些Redis资料中也称为即发即弃)。而其使用的发布/订阅模式,意味着其机制并不是由订阅者周期性的从Redis服务拉取事件通知,而是由Redis服务...
阅读(135) 评论(0)

Redis基本概念和安装使用

1、综述 Redis是一款内存数据库,所谓内存数据库是指它存储数据的主要介质是内存而非传统意义的磁盘,后者只用于辅助功能。Redis可以当作NoSQL数据库,缓存和消息代理来使用,目前各行业实践中使用Redis最多的场景还是把它当成缓存子系统,例如存储在线用户的登录情况,存储1小时内提交的订单情况等,缓存图片路径或者图片内容等等;其次较多的场景是作为消息代理来使用,例如DUBBO支持使用Re...
阅读(91) 评论(0)

开源全局配置中心XDiamond应用解析

简介: 全局配置中心,存储应用的配置项,解决配置混乱分散的问题。名字来源于淘宝的开源项目diamond,前面加上一个字母X以示区别。 特性: 服务端: 配置文件支持artifactId内部不同环境的继承和artifactId直接的依赖; 支持groupId,artifactId,version,profile四个维度以应对复杂环境; 可以对指定环境设置secret key防止非法获取配...
阅读(596) 评论(0)

Bean生成过程与BeanFactory ApplicationContext生命周期

spring 中有几种供 springbean 生存的容器: BeanFactory 、 ApplicationContext 、webApplicationContext 。由于 ApplicationContext 和 webApplicationContext 基本一样。所有这里就只介绍BeanFactory 和 ApplicationContext 。理解springBean 的生命周期主...
阅读(78) 评论(0)

spring BeanFactoryPostProcessor和BeanPostProcessor解析

BeanFactoryPostProcessor和BeanPostProcessor,这两个接口,都是spring初始化bean时对外暴露的扩展点。两个接口名称看起来很相似,但作用及使用场景却不同,分析如下: 1、BeanFactoryPostProcessor接口 该接口的定义如下: publicinterface BeanFactoryPostProcessor {     /**...
阅读(53) 评论(0)

Spring @Profile标签使用:

spring中@profile与maven中的profile很相似,通过配置来改变参数。 例如在开发环境与生产环境使用不同的参数,可以配置两套配置文件,通过@profile来激活需要的环境,但维护两套配置文件不如maven中维护一套配置文件,在pom中通过profile来修改配置文件的参数来的实惠。 也有例外,比如我在开发中调用商城接口经常不能返回我需要的数据,每次都需要mock数据,所以我写...
阅读(89) 评论(0)

spring EnableScheduling标签使用详解

@Target(value=TYPE)  @Retention(value=RUNTIME)  @Import(value=SchedulingConfiguration.class)  @Documented public@interface EnableScheduling Enables Spring's scheduled task execution capability,...
阅读(738) 评论(0)

spring 注解标签总结

声明Bean的注解: @Component : 组件,没有明确的角色 @Service : 在业务逻辑层(service层)使用 @Repository : 在数据访问层(dao层)使用. @Controller : 在展现层(MVC--SpringMVC)使用 注入Bean的注解: @Aautowired : Spring提供的注解. @Inject : JSR-3...
阅读(96) 评论(0)

线程基础:多任务处理——Fork/Join框架(排序算法性能补充)

1、概述 在之前的一篇文章《线程基础:多任务处理——Fork/Join框架(解决排序问题)》中,我们使用了fork/join框架提高归并排序的性 能。那篇文章发布后,有的读者联系我,觉得单就归并排序的优化并不太能够说明fork/join框架对性能的提升,也不能说明多个典型排序算法的性能区别。所以本篇文章从单线程快速排序到多线程归并排序、再到多线程桶排序的方式,依次分析它的执行性能。 ...
阅读(69) 评论(0)

线程基础:多任务处理——Fork/Join框架(要点2)

2-3. ForkJoinPool中的队列 那么ForkJoinPool是怎样创建队列的呢?请看如下两段源代码片段: /** * Tries to add the given task to a submission queue at * submitter's current queue. Only the (vastly) most common path * is direct...
阅读(91) 评论(0)

线程基础:多任务处理——Fork/Join框架(要点1)

1、工作过程概要 在开篇前,首先回答一个上篇文章中的一个问题。在上篇文章给出的第一个归并算法实例中提到,归并算法的算法效率和算法稳定性都是已知的排序算法中较好的,但是如果我们只是采用单线程的应用程序来运行它,那么算法性能还是不能全部发挥出来。文章还给了一张单线程运行归并排序算法时操作系统CPU的运行状态,如下图所示: 有的读者就询问,为什么单线程运行排序算法时,出现的效果是CP...
阅读(104) 评论(0)

线程基础:多任务处理——Fork/Join框架(解决排序问题)

3. 使用Fork/Join解决实际问题 之前文章讲解Fork/Join框架的基本使用时,所举的的例子是使用Fork/Join框架完成1-1000的整数累加。这个示例如果只是演示Fork/Join框架的使用,那还行,但这种例子和实际工作中所面对的问题还有一定差距。本篇文章我们使用Fork/Join框架解决一个实际问题,就是高效排序的问题。 3-1. 使用归并算法解决排序问题 排序...
阅读(54) 评论(0)

线程基础:多任务处理——Fork/Join框架(基本使用)

1. 概述 在进行系统存储专题的学习、总结、整理和写作的过程中感觉有点累了,加上最近在做书稿的第二次校稿工作,系统存储专题的学习和写作进度明显有些滞后,特别是编写的Ceph MON知识点。所以后续1、2个月的时间打算换一个学习整理方向,之后再继续恢复系统存储专题的写作。换一个什么方向呢?嗯~~之前的线程专栏还有一部分坑没有填上,就继续填这部分的坑吧。 java.util.concurr...
阅读(73) 评论(0)

Node Https配置

Node运行环境安装: 访问node官网:https://nodejs.org,选择需要安装的版本下载;或者使用wget直接下载到服务器。 选择版本的时候要注意,有源码版本,也有编译好的安装版本。建议直接下载编译好的版本进行安装,源码版本下载安装的时候在有些操作系统上会有unicode编码错误提示。 目前最新的是8.4.0,官方推荐的版本是6.11.2,我们使用的是8.3.0。 安装下载(...
阅读(131) 评论(0)

Java四种线程池的使用

Java通过Executors提供四种线程池,分别为: newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。 newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。 newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行。 ...
阅读(60) 评论(0)
102条 共7页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:18284次
    • 积分:1077
    • 等级:
    • 排名:千里之外
    • 原创:92篇
    • 转载:10篇
    • 译文:0篇
    • 评论:5条
    文章分类
    最新评论