首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
程序员油七
掘友等级
搬砖码农,程序段子手
技术不够,段子来凑,做一个程序段子手
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
18
文章 18
沸点 0
赞
18
返回
|
搜索文章
最新
热门
项目代码 if/else 过多,引起程序猿口吐莲花
那么过多的 if...else ,我们该如何去优化呢,让我们的程序看起来更加清爽一点?也为项目的后续接手人,减轻点负担,少吐槽一点。 Optional主要用于非空判断,是jdk8中新的特性,所以使用的不是特别多。 Assert可以帮助我们实现各种参数验证,比如字符串不为空等。还…
ThreadPoolExecutor 线程池异常消失之刨根问底
油七:行,咱们先看一下代码...,一顿扫描占卜之后,大致知道啥情况了。 同事:哥,我这程序还有救吗,客户下了死命令,今天解决啊。 五分钟之后... 油七:嗯,这个问题... . 因为同事的代码逻辑比较绕,不便于咱们复现问题,因此我写了一个简单的问题实例,作为本篇文章分析的依据。…
一段代码,两倍时差,直击并发编程伪共享
【闲话开篇】:这段时间项目接近尾声,我终于闲了一点,又拿起了早先未看完的书《JAVA高并发程序设计》,强迫自己学习。看到其中介绍《无锁的缓存框架:Disruptor》时,接触到了一个概念——伪共享(false sharing),说是会影响并发程序的执行性能,被很多人描述成无声的…
动手构建地铁关系网,实现最短路径查询
打开手机‘北京地铁’APP,输入起始点:霍营,终点:北京南站,发现系统给我们推荐了两条路线。 最短时间路线与最少换乘路线,并且分别给出了耗时与乘坐里程费。看到这里,不禁开启了靓仔疑问,假如给你地铁站相关数据,如何构建这样的关系网络呢?(尽量少写代码,毕竟我这个人懒的不行,花最少…
《闲扯Redis十一》Redis 有序集合对象底层实现
备注: 本节中涉及到的跳跃表实现,已经在上节《闲扯Redis十》Redis 跳跃表的结构实现一文中详情分析过,本文中将直接引用,不再赘述。 因为有序集合键的值为有序集合对象,所以用于有序集合键的所有命令都是针对有序集合对象来构建的。 由前文和上图可知,有序集合的编码可以是 zi…
Mysql 如何实现全文检索,关键词跑分
今天一个同事问我,如何使用 Mysql 实现类似于 ElasticSearch 的全文检索功能,并且对检索关键词跑分?我当时脑子里立马产生了疑问?为啥不直接用es呢?简单好用还贼快。但是听他说,数据量不多,客户给的时间非常有限,根本没时间去搭建es,所以还是看一下 Mysql …
《闲扯Redis十》Redis 跳跃表的结构实现
备注: 按照分析顺序,本节应该说道有序集合对象了,但是考虑到有序集合对象的底层实现中使用到了跳跃表结构,避免在分析有序集合时造成突兀,所以本节先来看看 redis 中跳跃表结构的具体实现。 Redis 的跳跃表由 redis.h/zskiplistNode 和 redis.h/…
《闲扯Redis九》Redis五种数据类型之Set型
Redis 中的 Set 是我们经常使用到的一种数据类型,根据使用方式的不同,可以应用到很多场景中。 集合对象的编码可以是 intset 或者 hashtable 。 intset 编码的集合对象使用整数集合作为底层实现, 集合对象包含的所有元素都被保存在整数集合里面。 另一方…
《闲扯Redis八》Redis字典的哈希表执行Rehash过程分析
2.将保存在 ht[0] 中的所有键值对 rehash 到 ht[1] 上面: rehash 指的是重新计算键的哈希值和索引值, 然后将键值对放置到 ht[1] 哈希表的指定位置上。 3.当 ht[0] 包含的所有键值对都迁移到了 ht[1] 之后 (ht[0] 变为空表), …
《闲扯Redis七》Redis字典结构的底层实现
字典, 又称符号表(symbol table)、关联数组(associative array)或者映射(map), 是一种用于保存键值对(key-value pair)的抽象数据结构。在字典中, 一个键(key)可以和一个值(value)进行关联(或者说将键映射为值), 这些关…
下一页
个人成就
文章被点赞
78
文章被阅读
34,594
掘力值
907
关注了
0
关注者
40
收藏集
0
关注标签
9
加入于
2019-11-04