- 博客(12)
- 收藏
- 关注
原创 Redis设计核心-1-Redis底层数据结构总结3
前言最近看了相关的Redis设计核心相关的书籍,对Redis有了一些小的认识,然后自己也做一些产出加深映象,我会从几个方面去总结Redis设计的核心内容:Redis底层数据结构总结、Redis高性能由哪些基础支撑、Redis应用场景、那些有趣的功能。概述本篇主要内容是对Redis的基础数据结构是如何实现底层数据结构做一个汇总。Redis为大部分数据结构提供了多种实现,目的体现了Red...
2019-06-09 18:06:56
215
原创 Redis设计核心-1-Redis底层数据结构总结2
前言最近看了相关的Redis设计核心相关的书籍,对Redis有了一些小的认识,然后自己也做一些产出加深映象,我会从几个方面去总结Redis设计的核心内容:Redis底层数据结构总结、Redis高性能由哪些基础支撑、Redis应用场景、那些有趣的功能。概述本篇主要内容是Redis底层数据结构总结。Redis供用户直接使用的数据结构有String、List、Set、Zset、Hash等结...
2019-06-09 17:47:46
783
原创 Redis设计核心-1-Redis底层数据结构总结1
前言最近看了相关的Redis设计核心相关的书籍,对Redis有了一些小的认识,然后自己也做一些产出加深映象,我会从几个方面去总结Redis设计的核心内容:Redis底层数据结构总结、Redis高性能由哪些基础支撑、Redis应用场景、那些有趣的功能。概述本篇主要内容是Redis底层数据结构总结。Redis供用户直接使用的数据结构有String、List、Set、Zset、Hash等结...
2019-06-09 16:16:29
1347
原创 Redis:高级数据结构HyperLogLog学习法
统计非重复元素个数HyperLogLog:如UV/在线人数/点赞数/注册数HyperLogLog:是什么: 是redis 2.8.9版本新增的高级数据结构,但核心是HyperLogLog算法(基数估算算法)。基数估值计数(cardinality counting)通常用来统计一个集合中不重复的元素个数,能统计非重复元素的个数,统计大量元素时占用的空间极小。为什么需要他:能做什么:一...
2019-04-14 16:13:58
295
原创 并发专栏:重复请求如何处理
同一请求在短时间内进行多次相同请求,出现这种情况有很多,如用户多次点击发送请求、模拟请求、服务端处理慢时客户端的重请求。这类请求的特点: 1.多次请求的时间间隔非常短,一般在几十毫秒之内(正常请求在几十毫秒内处理完成) 2.请求信息相同,造成业务方重复处理。 解决办法: 前端:做防重处理 后端: 1.数...
2019-02-12 10:20:48
1943
原创 并发专栏: 高并发情况下的写业务
为什么会出现并发问题? 并发问题指的是对相同资源的争夺,资源具有状态,不可重复使用,比如秒杀、购物,还有一种场景如相同请求也存在并发问题,也是对资源的争夺,比如争夺订单的状态。一般存在于写业务中。 1.使用锁: 1.悲观锁:可以响应重复请求,幂等,缺点:高并发下请求堆积 2.乐观锁:不处理重复请求,结果不幂等,采用redis缓存锁 ...
2019-02-12 10:19:56
864
翻译 word2vec入门简介
导读:word2VEC 是什么? 百科描述: Word2vec,是为一群用来产生词向量的相关模型。这些模型为浅而双层的神经网络,用来训练以重新建构语言学之词文本。网络以词表现,并且需猜测相邻位置的输入词,在word2vec中词袋模型假设下,词的顺序是不重要的。训练完成之后,word2vec模型可用来映射每个词到一个向量,可用来表示词对词之间的关系,该向量为神经网络之隐藏层。...
2018-07-22 15:30:55
1380
原创 java虚拟机学习笔记1-----java内存区域
本文内容是笔者看了 《深入了解java虚拟机》后的一些笔记,也欢迎各位java爱好者一起学习和交流。简书地址 java虚拟机在执行java程序的过程中会将他所管理的内存划分为若干个不同的数据区域,他们的用途、生命周期都不相同。分为以下数据区:1.程序计数器:虚拟机在启动时,会创建多个线程去执行任务,而由于cpu是在快速的上下文切换,而为了线程切换后
2017-12-10 15:40:44
268
原创 springboot与rabbitMQ实现延迟加载
参考:http://blog.youkuaiyun.com/u014308482/article/details/53036770http://blog.youkuaiyun.com/i_vic/article/details/72742277里面的例子参考自这两篇博客,记录下使用过程。为什么要延迟加载:制定一项任务,在某个时间之后去执行,这种场景比较适合使用延迟加载的模式。 延迟队
2017-11-28 11:27:12
2121
原创 订单失效可以采用的方案
有这样这个场景,购物系统中,用户下订单后有30分钟的时间去付款,如果没有付款则失效该订单,暂时有以下两种方式:a.采用延迟队列的方式(MQ),当用户下订单后,将用户的订单的标识全部发送到延时队列中,30mins后进去消费队列中被消费,消费时先检查该订单的状态,如果未支付则标识该订单失效。流程如下:1.用户下订单时后台生成订单,然后又将该订单的标识发送给延时队列,消费者队列将收到的标识去
2017-11-28 09:47:08
5237
1
原创 差点进入游戏深坑
老早就想新开一个博客来专门写自己积累的一些经验了,因为自己的懒惰、贪婪(想玩游戏)一直拖到现在,今天顺手写了一个关于intern()那些事,也不尽感叹互联网飞速的发展,从一台老爷机上部署一个项目,到今天的各种服务化、自动化、云化的服务,也正符合社会进阶的趋势,快速化和虚拟化,这样也意味者一部分人会面临着转行的压力,而对于我来说也面临着挑战,从微服务、应用容器化、自动化运维等等的技术都在如雨后春笋一
2017-11-21 21:33:08
299
原创 string.intern()那些事
string.intern()那些事参考自 :http://blog.youkuaiyun.com/seu_calvin/article/details/52291082,这篇关于运行时常量池的位置有些偏差,运行时常量池是在方法区中的,主要用于存放编译器生成的各种字面量和符号引用。最近在看java虚拟机的一些,遇到频繁出现的词:string.intern();经常会说intern()是一个native方法。(下
2017-11-21 16:51:36
322
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人