果冻虾仁

https://www.zhihu.com/people/guodongxiaren

为什么我说C/C++程序员都要阅读Redis源码之:通过Redis学习事件驱动设计

0. 为什么我说C/C++程序员都要阅读Redis源码 主要原因就是『简洁』。如果你用源码编译过Redis,你会发现十分轻快,一步到位。其他语言的开发者可能不会了解这种痛,作为C/C++程序员,如果你源码编译安装过Nginx/Grpc/Thrift/Boost等开源产品,你会发现有很多依赖,而依...

2019-03-30 22:36:25

阅读数 410

评论数 0

2018,人生是一条蛇,它咬着自己的尾巴

1. Ouroboros 古埃及有一个图腾:一条咬住自己的尾巴的蛇。后来这个图腾广泛流传,渗透到印度教,古希腊,也出现在北欧神话中。其名为:Ouroboros。象征着宇宙循环,无始无终,开始即是结束,结束亦是开始。其实生活也常常是这样,任凭时间推移,生活却总在某个地方回归原点。 2. 风雨与屋...

2018-12-31 12:59:56

阅读数 4851

评论数 51

面经笔经:编程判断栈增长方向

面试官自来也某非X86的机器,栈增长方向未知,编程实现判断其栈增长方向。面试官自来也补充:连续定义两个变量,可能被编译器优化,重新调整代码对应指令的顺序。我们都知道x86...

2019-08-24 23:50:41

阅读数 4

评论数 0

Faiss: 入门导读

引言Faiss是Facebook于2017年开源的一个相似度检索工具。相似度检索是啥?搜索、广告、推荐都需要用到相似度的检索。因为无论是网页、广告抑或推荐博文一定要符合你...

2019-08-17 14:51:18

阅读数 23

评论数 0

前卡与落地页

搜索引擎、广告系统以及其他推荐与内容产品中其实都有前卡和落地页的概念。前卡比如在谷歌中搜索『北美旅游』,搜索结果的每条记录展示出来的区域就称作『前卡』。当然前卡是多内的叫...

2019-08-11 15:00:53

阅读数 15

评论数 0

《推荐系统实践》笔记:用户行为数据与日志

推荐系统大多基于用户行为数据分析的,而记录用户行为数据最简单的形式就是日志。 其实不止是推荐系统,搜索引擎和广告系统都有类似的概念。日志有如下几种: 原始日志 用户在一个网站上的各种行为会产生各种原始日志(raw log)。 展示日志 搜索引擎和搜索广告系统一次检索(一次PV...

2019-08-10 13:22:33

阅读数 5

评论数 0

【答网友问】实习经历

Q:你好 看了你的一些回答和博客,感觉大神很厉害,后台开发方面了解也很多。我是校招拿到的鹅厂offer,实习生的时候也去了但是没过。我是像有个问题里面试官说的那种对c++...

2019-08-06 01:01:25

阅读数 7

评论数 0

你只看到头条高调做搜索,没看到微信搜索框也一直在悄悄进化

声明:本文仅代表个人观点!7月31日,今日头条的一篇文章引爆网络,高调宣布布局全网搜索,一时间媒体都纷纷将此视作头条吹响了进攻百度战略腹地的号角。在众说纷纭头条能否战胜百...

2019-08-04 23:26:12

阅读数 16

评论数 0

C/C++输出空字符串,UB UB UB UB UB UB…

看网上很多讲一些C/C++的问题回答或者文章,经常会遇到UB、UB、UB、UB…… UB就是undefined behavior。也就是语言的官方标准未定义的地方,在不同系统,编译器上行为可能不一致。没错,我们当然不能把UB的效果,当成语言标准。但我们也不能因为某些语法是UB就拒绝学习和探究,毕...

2019-08-03 18:21:26

阅读数 92

评论数 0

《这就是搜索引擎》笔记:检索质量评价标准

召回率和准确率 召回率(recall) 和 准确率(Precision)是最常见的搜索引擎质量的评价标准,在推荐系统中也有这两个评估指标。 召回率(recall) 准确率(Precision) P@10指标 评估在搜索结果中排名最靠前的头10个文档中有多大...

2019-08-03 15:23:52

阅读数 5

评论数 0

awk一行码:筛选某列指定值的数据

awk其实不只是一个工具、一个命令,它其实也是一种『编程语言』。场景1:一个TAB分割的数据文件,假设名为data.txt,第二列为用户id。从中筛选用户id为123的所...

2019-08-02 00:33:47

阅读数 8

评论数 0

Trick C++: 宏函数与模板类

这是一个小trick。虽然不难理解,但是经常会忘记,导致代码返工。看这个代码:#include <iostream> #include &a...

2019-07-22 06:00:00

阅读数 11

评论数 0

How To Be Pythonic:一行for

1行代码提取dict中的key和value,组成list: conf_dict={'host':'127.0.0.1','port':3600,'user':'root','pswd':123456} key_list=[keyforkeyinconf_dict] valu...

2019-07-20 22:55:18

阅读数 4

评论数 0

《这就是搜索引擎》一元编码勘误,兼谈Elias Gamma系列算法

《这就是搜索引擎》整体来看还是适合作为搜索引擎知识的入门书的。但是有些章节的描述错误,实在有伤大雅! 书籍信息:《这就是搜索引擎》作者:张俊林 2012年1月第1版 一元编码 第4章『索引压缩』的4.2节提到了一元编码(unary code)和二进制编码(binary code)。首先关于一...

2019-04-22 00:13:12

阅读数 3

评论数 0

高山仰之可极,谈半同步/半异步网络并发模型

0. 仰之弥高 2015年,在腾讯暑期实习期间,leader给我布置的一个任务是整理分析网络模型。虽然也有正常工作要做,但这个任务贯穿了整个实习期。后来实习结束的总结PPT上,这部分内容占到了一半篇幅,我从C10K问题引入,讲了很多:从fork-exec的多进程到进程池;从多线程再到IO多路复用...

2019-04-17 21:59:00

阅读数 138

评论数 0

《这就是搜索引擎》笔记:网页作弊

3月10日:金庸诞辰 要首先牢牢记住:作弊的目的是出于商业利益驱使! 主要作弊类型 1. 内容作弊 增加目标作弊词的词频 增加主题无关的热门query词引流 关键位置插入作弊词<b> <h> &lt...

2019-04-01 00:00:00

阅读数 4

评论数 0

《这就是搜索引擎》笔记:PageRank

搜索引擎在对结果进行排序的时候主要参考两点: 网页内容与query的相关性 网页的重要性 而计算网页的重要性主要就是通过『链接分析』方法。 最著名的两个链接分析方法是:PageRank 和 HITS。 Web图: 把网页视作节点,如果网页包含另一个网页的link,则视...

2019-03-24 22:53:41

阅读数 3

评论数 0

《这就是搜索引擎》笔记:索引更新

索引的建立 索引建立完不是一成不变的,因为文档会新增,也会删除。所以要建立动态索引。 原先内存中有词表,磁盘有对应倒排列表。再从内存中加两个词表,一个表示新增,一个表示删除。query的时候,就 合并原有词表个表示新增的词表,再过滤掉删除词表。 如果一个文档被修改,也先记录一个原文档...

2019-03-17 06:00:00

阅读数 4

评论数 0

《这就是搜索引擎》笔记:索引基础

搜索引擎索引其实就是实现单词——文档矩阵的具体数据结构。 倒排索引 单词,文档都化会成ID记录到词典 单词词典可以用拉链法的哈希,或者B树B+树存储 中文单词之间由于无分隔符,需要先进行切词。 每个单词后面会有一个倒排列表,记录它出现过的文档。但实际存储不一一记录文档...

2019-03-16 16:47:44

阅读数 3

评论数 0

那些年,我们追过的RPC

1974年冬,互联网大师 Jon Postel发表了RFC674:“Procedure Call Protocol Documents,Version 2”,尝试定义一种...

2019-03-14 08:00:00

阅读数 12

评论数 0

提示
确定要删除当前文章?
取消 删除