- 博客(5)
- 资源 (5)
- 收藏
- 关注
原创 HyperLogLog应用
HyperLogLog应用一、场景jim是一个程序员,就职于一家小型互联网公司做Java开发,平时就是使用Redis做缓存、分布式锁使用,突然有一天老板让jim统计一下一个页面的pv和uv,当时的jim是一个小菜鸡(当然,现在也是,哈哈哈)一脸懵逼都不知道pv、uv是什么。pv:page view的缩写,即页面浏览量,通常是衡量一个网络新闻频道或网站甚至一条网络新闻的热度的主要指标。uv:unique visitor的简写,是指通过互联网访问、浏览这个网页的自然人,uv需要去重,同一个用户的
2020-09-14 19:55:25 329 1
原创 Redis实现分布式锁+可重入性
Redis实现分布式锁一、为什么需要分布式锁比如现在有A和B两个操作对数据库中的数据account进行操作,account初始值为42。A:account=db.getAccount() > account=42 account+= 10; > account=52 db.setAccount(account);以上A要对account所做的get+set不是原子性操作,所以A在get之后set之前,如果B也参与到对a...
2020-09-12 21:43:12 2915
原创 Redis基本数据类型的数据结构
Redis基本数据结构一、String:字符串字符数组构成的动态字符串,value长度为len,当len<1MB时,加倍扩容;当len>=1MB时,每次扩容增加1MB的空间。len最大可存储512MB。 如果value值是一个整数,还可以对它进行自增自减操作,范围是signed long的最大最下值,超过这个范围Redis会报错。 ERR increment or decrement would overflow二、List:列表底层数据结构是一个quicklist(快速链表)。
2020-09-12 20:26:04 231
原创 Java集合框架--常用的Map
Java集合框架之MapMap是一种键值映射关系集合,Map集合中的键必须是唯一的不能重复的。Map包含很多的实现类,但在日常开发中常用的有HashMap,HashTable,ConcurrentHashMap。一、HashMapHashMap是一个允许存入空值空键、线程非安全的Map集合,它底层的数据结构是一个哈希表(数组+链表)。HashMap添加元素:①计算元素key的h...
2019-03-27 20:41:12 214
原创 Java集合框架--常用List
Java集合框架之ListJava集合框架分为两部分:①Collection②Map;Collection接口又包含两个重要的子接口List和Set。一、ListList集合可以保证元素是有序的(添加的元素的顺序和从头到位遍历元素的顺序时一致的)。我们常用的有ArrayList和LinkedList两种。(1)、ArrayList①、ArrayList底层数据结构是一个数组,因...
2019-03-27 16:36:07 210
基于MavenJavaWeb的员工信息管理系统
2018-05-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人