摘要:
在现在的项目开发过程中,消息中间件使用的越来越多,一般用的比较多的消息中间件有rabbitmq、activemq、rocketmq、kafka等。那么今天,我们来学习springboot整合rabbitmq。 在整合rabbitmq的时候,我们先要在本地下载安装rabbitmq,而rabbitmq是 阅读全文
摘要:
合理使用异步线程开发项目能提高一个项目的并发量,减少响应时间。下面就简单介绍一下异步线程池的使用,参考博客:https://blog.csdn.net/hry2015/article/details/67640534 spring 对@Async定义异步任务的方法有3种: 1.最简单的异步调用,返回 阅读全文
摘要:
在Java1.8之前还没有stream流式算法的时候,我们要是在一个放有多个User对象的list集合中,将每个User对象的主键ID取出,组合成一个新的集合,首先想到的肯定是遍历,如下: 或者在1.8有了lambda表达式以后,我们会这样写: 在有了stream之后,我们还可以这样写: 一行代码直 阅读全文
摘要:
hashMap 不用多说,大家肯定都用过,今天我就hashMap的底层数据结构跟大家做一个分享。 hashMap 是基于哈希表的 Map 接口的实现,以key-value的形式存在。在HashMap中,key-value总是会当做一个整体来处理,系统会根据hash算法来来计算key-value的存储 阅读全文
摘要:
5.1 数据库 5.1.1 数据库的结构: Redis 中的每个数据库,都由一个redis.h/redisDb 结构表示: 5.1.2 数据库的切换: redisDb 结构的id 域保存着数据库的号码。这个号码很容易让人将它和切换数据库的SELECT 命令联系在一起,但是,实际上,id 属性并不是用 阅读全文
摘要:
redis中我们会经常用到事务、订阅与发布、Lua脚本以及慢查询日志,接下来我们就一一对他们进行探讨学习。 4.1事务 redis通过MULTI、DISCARD、EXEC和WATCH四个命令来实现事务功能。 4.1.1 事务 事务提供了一种“将多个命令打包,一次性按顺序地执行”的机制,并且事务在执行 阅读全文
摘要:
今天我们来看一下redis的数据类型。既然redis的键值对可以保存不同类型的值,那么很自然就需要对键值对的类型进行检查以及多态处理。下面我们将对redis所使用的对象系统进行了解,并分别观察字符串、哈希表、列表、集合和有序集类型的底层实现。 3.1 对象处理机制 在redis的命令中,用于对键进行 阅读全文
摘要:
我们继续接着上一篇博客,今天来看看内存映射数据结构。 上篇我们讲了内部数据结构,虽然内部数据结构非常强大,但是创建一系列完整的数据结构本身也是一件相当耗费时间的工作,当一个对象包含的元素数量并不多,或者元素本身的体积并不大时,使用代价高昂的内部数据结构并不是最好的办法。因此我们会用内存映射数据结构来 阅读全文
摘要:
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交 阅读全文
摘要:
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要 阅读全文