5 呼延十

尚未进行身份认证

我要认证

呼延

等级
TA的排名 5w+

Redis系列(十一)Redis命令全集

背景介绍publicDBstringlistsetssorted setshashesstreamsbitmapshyperloglogsgeospatial index背景介绍以下摘自:Redis 官网。Redis is an open source (BSD licensed), in-memory data structure store, used as ...

2020-02-05 14:01:09

Redis系列(十)Redis对象系统

前言介绍类型编码和底层数据结构五种常见的对象类型类型检查与命令多态内存回收对象共享对象淘汰:空转时长总结参考文章联系我前言其实关于本文,我犹豫再三。对象系统值得写一篇文章吗?从技术上来讲,当然是值。但是对于我们大部分人来说,它都是隐身的。写的话,顺序放在哪里?在 Redis 系列(九)底层数据结构之五种基础数据类型的实现中其实就提到了,那么应该在此之前先介...

2020-02-04 10:11:36

Idea 发布最适合程序员的字体!

作为 编译期界的大佬, JetBrains公司一直致力于提供更好的编码环境.前两天, JetBrain推出了一个新的字体 JetBrain Mono. 号称是最适合程序员的编码的字体, 我赶紧尝了尝鲜, 体验了一天之后发现确实好看, 因此推荐给大家.首先是官网 JetBrain Mono字体.看一下官方的示例:.是不是看起来很棒, 怎么安装呢?如果你的IDEA 是2019.3 之后的...

2020-01-21 15:46:16

Redis系列(九)底层数据结构之五种基础数据类型的实现

前言定义字符串对象intrawembstr浮点数如何保存?编码转换条件总结列表对象总结集合对象intsethashtable总结有序集合对象ziplist 编码skiplist 编码总结散列对象ziplist 编码hashtable 编码总结全文总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常...

2020-01-21 10:18:35

Redis系列(八)底层数据结构之紧凑列表

前言定义总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来。本文将介绍 Redis 中底层的 listpack(紧凑列表) 的实现方法。 它是 Redis 的 Stream 用到的数据结构之一...

2020-01-20 08:59:06

Redis系列(七)底层数据结构之跳跃表

前言定义层级问题顺序问题排名问题总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来。本文将介绍 Redis 中底层的 skiplist(跳跃表) 的实现方法。 它是 Redis 中有序集...

2020-01-19 09:09:14

Redis系列(六)底层数据结构之字典

前言定义字典哈希表哈希算法哈希冲突扩容与缩容渐进式 hash原理小应用思考问题:为什么缩容不用考虑 bgsave?总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来...

2020-01-17 08:55:20

Redis系列(五)底层数据结构之整数集合

前言定义整数集合的升级整数集合分级的好处不支持降级总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来。本文将介绍 Redis 中底层的 intset(整数集合) 的实现方法。 它是...

2020-01-16 09:21:21

Redis系列(四)底层数据结构之快速列表

前言定义优劣ziplist 切割大小压缩深度总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来。本文将介绍 Redis 中底层的 quicklist(快速列表) 的实现方法。 它是 Re...

2020-01-15 09:35:04

Redis系列(三)底层数据结构之压缩列表

前言定义压缩列表的定义压缩列表节点的定义新增节点问题:级联更新总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来。本文将介绍 Redis 中底层的 ziplist(压缩列表) 的...

2020-01-14 10:47:57

Redis系列(二)底层数据结构之双端链表

前言定义优劣双向链表无环链表带有头指针和尾指针带有长度计数器总结参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来。本文将介绍 Redis 中最基础的 linkedlist(双端链...

2020-01-13 08:58:54

Redis系列(一)底层数据结构之简单动态字

前言定义优劣高性能获取字符串长度杜绝缓冲区溢出减少修改字符串产生的内存分配次数,提高修改字符串性能二进制安全兼容部分 C 语言的库函数总结SDS 限制为512M问题参考文章联系我前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将...

2020-01-07 11:06:45

Maven本地子模块互相依赖

很多时候,我们自己的项目有许多的子模块,之间互相有依赖,但是我们没有私服来发布打好的jar包.最常见的就是本地有一个Util包, 随手写的其他项目想要引用, 却苦于没有私服. 把代码扔到同一个项目, 强迫症有忍不住.这个问题Maven是有解决方案的.本质上还是打包发布,只是不再发布到远端的Maven仓库,而是打包完成之后, 将这个jar包安装到本地的maven即可.首先,在你的util子模块...

2020-01-06 09:10:16

后缀数组(Suffix Array)在字符串匹配中的应用

前言首先抛出一个问题: 给定300w字符串A, 之后给定80w字符串B, 需要求出 B中的每一个字符串, 是否是A中某一个字符串的子串. 也就是拿到80w个bool值.当然, 直观的看上去, 有一个暴力的解法, 那就是 双重循环, 再调用字符串德contains方法, 想法很美好, 现实很残酷. 如果你真的这么实现了(是的, 我做了.), 就会发现,效率低到无法接受.具体的效率测评在后文给出...

2020-01-01 21:27:19

Trie树的基本原理及应用

前言理论知识[什么是 Trie 树](#什么是 trie 树)[Trie 的优劣势](#trie 的优劣势)[Trie 的应用场景](#trie 的应用场景)编码实现参考文章联系我前言在做用户 query 理解的过程中,有许多需要使用词典来"识别"的过程。在此期间,就避免不了使用 Trie 树这一数据结构。因此今天我们来深入的学习一下 Trie 树相关的理论知识,并且...

2019-12-17 21:54:36

AWK(简易的文本处理脚本语言)入门学习

前言由于最近的工作内容的关系, 经常需要对文本文件做一些处理. 每次都要写个脚本来处理实在是有点麻烦. 这时候想起来很久以前稍微接触过的AWK, 来做这个工作真的是再合适不过了.因此, 趁着这个机会, 把AWK深入学习一点,记录在此.概述AWK是一门解释型的编程语言。在文本处理领域它是非常强大的,它的名字来源于它的三位作者的姓氏:Alfred Aho, Peter Weinberger 和...

2019-12-05 09:38:08

用深度学习解决NLP中的命名实体识别(NER)问题(深度学习入门项目)

前言离线训练样本数据训练数据编码模型搭建加载数据评估模型在线预测tensorflow serving 介绍模型保存格式加载模型客户端请求运行环境相关链接本文源码已经上传至 github.: https://github.com/HuBlanker/Keras-Chinese-NER本文主要理论依据论文:Bidirectional LSTM-CR...

2019-12-01 21:42:54

使用FastText构建你的第一个文本分类器!

前言简介原理实际应用下载安装处理数据训练调优demo相关文章前言最近在做一些意图识别方面的工作,所以尝试一下用 fasttext 做一个文本分类器,学习记录如下。简介首先,我们使用 fasttext 的目的是什么?是文本分类,即对一个词语,给出它所属于的类别。文本分类的目标是将文档(如电子邮件,博文,短信,产品评论等)分为一个或多个类别。 这些类别可以是根据评论分...

2019-11-21 11:01:54

[设计模式]-模板方法模式

前言在上一篇文章责任链模式中提到了模板方法模式,因此这里简单介绍一下.模板方法模式比较简单,或者说比较常用.在开发过程中,许多人在不知不觉的情况下就会使用,只要他具有良好的面对对象思维.比如当你写了Dog和Cat两个类,发现很多相同的代码,你自然就会将相同模块提取抽象成父类,然后将一些公共的方法放到父类中,这样子就基本实现了模板方式模式.介绍(摘自《Head FIrst 设计模式》)在一...

2019-03-20 00:33:47

[设计模式]-责任链模式

1.介绍使多个对象都有机会处理请求,从而避免请求的发送者与接受者之间的耦合关系. 将多个接受者连成一条链,沿着该链处理请求,知道请求被处理为止.类图角色抽象处理者: 定义了处理请求的接口或者抽象类,提供了处理请求的的方法和设置下一个处理者的方法。具体处理者: 实现或者继承抽象这角色,具体的实现处理逻辑.实例与代码责任链模式有纯的和不纯的.纯的:当前接收者要么处理,要么传递给下一个...

2019-03-19 20:57:02

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。