IO 一直是软件开发中的核心部分之一,伴随着海量数据增长和分布式系统的发展,IO扩展能力愈发重要。 Java IO 方式有很多种,基于不同的IO抽象模型和交互方式,可以简单区...
在分布式开发中,唯一主键的设计非常重要,我们今天来看看分布式ID的常用设计 首先我们先明确一下分布式ID的定义1.全局唯一,不是单点系统的唯一,而是分布式系统的唯一2.有序性...
在日常开发中,尤其是业务开发,少不了利用java对数据库进行基本的增删改查等数据操作,这也是java工程师必备技能之一,不仅仅需要对java语言框架的理解,更需要对数据库自身...
今天,是我跑步3周年纪念日。 2016年3月14日,我用某跑步软件正式开始记录跑步数据,到今天正好3年。(其实,在此之前,我还用另一个软件跑过一段时间,跑量50+KM,不过可...
今天加班导致没有时间更新简书,一会过了是十一点我再更新吧,现在在路上呢,马上到家1326946很不是日更,所以想先写100字,一会我再把这篇凑数的文章更新下1,望大家谅解1手...
今天不分享技术文章了,想写点这些年的一些 思考 我14年参加工作,想想已经做程序员已经5年之久了,这五年说长不长,说短也不短,做了五年的应用类开发,主要做java后端,这些年...
Java动态代理对象,今天和大家分享一下动态代理的一种实现方案,使用JDK原生方案。 什么是动态代理 我们比较熟悉数据库连接池,在对数据库进行操作是,我们首先获取数据库对象,...
在大数据高并发场景下,单个 Redis 实例往往会显得捉襟见肘。首先体现在内存上,单个 Redis 的内存不宜过大,内存太大会导致 rdb 文件过大,进一步导致主从同步时全量...
目前我们讲的 Redis 还只是主从方案,最终一致性。读者们可思考过,如果主节点凌晨 3 点突发宕机怎么办?就坐等运维从床上爬起来,然后手工进行从主切换,再通知所有的程序把地...
在平时线上 Redis 维护工作中,有时候需要从 Redis 实例成千上万的 key 中找出特定前缀的 key 列表来手动处理数据,可能是修改它的值,也可能是删除 key。这...
Redis在3.2版本增加了GEO模板,意味着通过redis可以做附近的人,附近的门店,附近的商场这样的功能。 用数据库来算附近的人 地图元素的位置数据使用二维的经纬度表示,...
漏斗限流是最常用的限流方法之一,顾名思义,这个算法的灵感源于漏斗(funnel)的结构。 漏斗的容量是有限的,如果将漏嘴堵住,然后一直往里面灌水,它就会变满,直至再也装不进去...
限流在分布式系统中是一个经常被提到的话题,如果当前系统的能力,不足以承受那么大的访问量的时候,那么我们就要阻止外来请求对系统继续施压 实现简单限流 首先我们来看一个常见的简单...
拿今日头条来说,它会不停的给我们推荐新的新闻,每次推荐都要去重,过滤掉我们之前看过的内容,今日头条如何做到去重呢,我们上面的HyperLogLog虽然能去重,但是没有办法确认...
老规矩还是先假设一个场景:比如京东的商品详情页,如果需要你来统计每天的UV数据,你会如何实现? 如果是PV就好办了,直接给每个网页增加一个计时器,每个网页增加一个日期,这样一...
假设一个应用场景:我们需要记录用户一年的签到记录,签到了是1,没签是0,记录365天,当用户上亿后,存储空间是惊人的。为了解决这个问题,redis提供了位图的数据结构。这样每...
我们习惯于用rabbitmq和kafka作为消息中间件,来给应用之间增加异步的能力。但是使用过的同学都知道,使用专业的消息中间件使用起来非常复杂,我们实现一个简单的功能都需要...