随笔- 22  评论- 3  文章- 0 
  2019年3月14日
摘要:1.Stream 流的介绍 1.1 java8 stream介绍 java8新增了stream流的特性,能够让用户以函数式的方式、更为简单的操纵集合等数据结构,并实现了用户无感知的并行计算。 1.2 从零开始实现一个stream流 相信很多人在使用过java8的streamAPI接口之后,都会对其实 阅读全文
posted @ 2019-03-14 22:12 小熊餐馆 阅读 (2678) 评论 (1) 编辑
  2019年9月27日
摘要:1.rocketmq图形化控制台安装 虽然rocketmq为用户提供了使用命令行管理主题、消费组以及broker配置的功能,但对于不够熟练的非运维人员来说,命令行的管理界面还是较难使用的。为此,我们可以使用图形化的管理界面来简化管理操作。 rocketmq官方推荐的图形化控制台目前还处在不成熟的孵化 阅读全文
posted @ 2019-09-27 00:38 小熊餐馆 阅读 (177) 评论 (0) 编辑
  2019年9月19日
摘要:1.消息队列介绍 消息队列本质上来说是一个符合先进先出原则的单向队列:一方发送消息并存入消息队列尾部(生产者投递消息),一方从消息队列的头部取出消息(消费者消费消息)。但对于一个成熟可靠的消息队列来说,所需要解决的主要问题还包括:高效可靠的消息投递、存储;能承受高并发的流量冲击,可通过集群部署来解决 阅读全文
posted @ 2019-09-19 22:05 小熊餐馆 阅读 (163) 评论 (0) 编辑
  2019年4月18日
摘要:1.分布式锁介绍 在计算机系统中,锁作为一种控制并发的机制无处不在。 单机环境下,操作系统能够在进程或线程之间通过本地的锁来控制并发程序的行为。而在如今的大型复杂系统中,通常采用的是分布式架构提供服务。 分布式环境下,基于本地单机的锁无法控制分布式系统中分开部署客户端的并发行为,此时分布式锁就应运而 阅读全文
posted @ 2019-04-18 22:06 小熊餐馆 阅读 (793) 评论 (0) 编辑
  2019年3月14日
摘要:1.Stream 流的介绍 1.1 java8 stream介绍 java8新增了stream流的特性,能够让用户以函数式的方式、更为简单的操纵集合等数据结构,并实现了用户无感知的并行计算。 1.2 从零开始实现一个stream流 相信很多人在使用过java8的streamAPI接口之后,都会对其实 阅读全文
posted @ 2019-03-14 22:12 小熊餐馆 阅读 (2678) 评论 (1) 编辑
  2019年2月28日
摘要:1.优先级队列介绍 1.1 优先级队列 有时在调度任务时,我们会想要先处理优先级更高的任务。例如,对于同一个柜台,在决定队列中下一个服务的用户时,总是倾向于优先服务VIP用户,而让普通用户等待,即使普通的用户是先加入队列的。 优先级队列和普通的先进先出FIFO的队列类似,最大的不同在于,优先级队列中 阅读全文
posted @ 2019-02-28 22:40 小熊餐馆 阅读 (333) 评论 (0) 编辑
  2019年2月13日
摘要:1.AVL树介绍 前面我们已经介绍了二叉搜索树。普通的二叉搜索树在插入、删除数据时可能使得全树的数据分布不平衡,退化,导致二叉搜索树最关键的查询效率急剧降低。这也引出了平衡二叉搜索树的概念,平衡二叉搜索树在此前的基础上,通过一系列的等价变换使二叉搜索树得以始终处于"平衡"的状态,拥有稳定且高效的查询 阅读全文
posted @ 2019-02-13 20:15 小熊餐馆 阅读 (238) 评论 (0) 编辑
  2019年1月24日
摘要:1.二叉搜索树介绍 前面我们已经介绍过了向量和链表。有序向量可以以二分查找的方式高效的查找特定元素,而缺点是插入删除的效率较低(需要整体移动内部元素);链表的优点在于插入,删除元素时效率较高,但由于不支持随机访问,特定元素的查找效率为线性复杂度O(1),效率较低。 向量和链表的优缺点是互补的,那么有 阅读全文
posted @ 2019-01-24 22:40 小熊餐馆 阅读 (375) 评论 (0) 编辑
  2019年1月3日
摘要:1.哈希表介绍 前面我们已经介绍了许多类型的数据结构。在想要查询容器内特定元素时,有序向量使得我们能使用二分查找法进行精确的查询((O(logN)对数复杂度,很高效)。 可人类总是不知满足,依然在寻求一种更高效的特定元素查询的数据结构,哈希表/散列表(hash table)就应运而生啦。哈希表在特定 阅读全文
posted @ 2019-01-03 21:50 小熊餐馆 阅读 (451) 评论 (0) 编辑
  2018年12月19日
摘要:1.双端队列介绍 在介绍双端队列之前,我们需要先介绍队列的概念。和栈相对应,在许多算法设计中,需要一种"先进先出(First Input First Output)"的数据结构,因而一种被称为"队列(Queue)"的数据结构被抽象了出来(因为现实中的队列,就是先进先出的)。 队列是一种线性表,将线性 阅读全文
posted @ 2018-12-19 22:09 小熊餐馆 阅读 (659) 评论 (0) 编辑
  2018年12月6日
摘要:1.栈的介绍 在许多算法设计中都需要一种"先进后出(First Input Last Output)"的数据结构,因而一种被称为"栈"的数据结构被抽象了出来。 栈的结构类似一个罐头:只有一个开口;先被放进去的东西沉在底下,后放进去的东西被放在顶部;想拿东西必须按照从上到下的顺序进行操作。 示意图来自 阅读全文
posted @ 2018-12-06 21:59 小熊餐馆 阅读 (291) 评论 (0) 编辑