多个进程绑定(bind)同一个端口,当客户断发起连接(connect)时,内核会通过一个hash算法决定分配到那个进程上。 Linux 4.5之前的reuseport查找实现(4.3内核) Linux 4.5(针对UDP)/4.6(针对TCP)的reuseport查找实现 单机上的 连接服务器 则可 ...
分类:
其他好文 时间:
2017-06-13 17:11:15
阅读次数:
168
计算理论中,没有Hash函数的说法,只有单向函数的说法。所谓的单向函数,是一个复杂的定义,大家可以去看计算理论或者密码学方面的数据。用“人 类”的语言描述单向函数就是:如果某个函数在给定输入的时候,很容易计算出其结果来;而当给定结果的时候,很难计算出输入来,这就是单项函数。各种加密函 数都可以被认为 ...
分类:
编程语言 时间:
2017-06-11 10:26:17
阅读次数:
244
散列表,它是基于快速存取的角度设计的,也是一种典型的“空间换时间”的做法。顾名思义,该数据结构可以理解为一个线性表,但是其中的元素不是紧密排列的,而是可能存在空隙。 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映 ...
分类:
编程语言 时间:
2017-06-11 10:21:22
阅读次数:
221
上月前面试某公司,对于mysql分表的思路,当时简要的说了下hash算法分表,以及discuz分表的思路,但是对于新增数据自增id存放的设计思想回答的不是很好(笔试+面试整个过程算是OK过了,因与个人预期的薪酬不太理想而忍痛放弃.),在此再深究下mysql 分表优化之类的设计思路方案.先来闲扯下发文 ...
分类:
数据库 时间:
2017-06-03 18:14:22
阅读次数:
251
一致性Hash算法 关于一致性Hash算法,在我之前的博文中已经有多次提到了,MemCache超详细解读一文中"一致性Hash算法"部分,对于为什么要使用一致性Hash算法、一致性Hash算法的算法原理做了详细的解读。 算法的具体原理这里再次贴上: 先构造一个长度为232的整数环(这个环被称为一致性 ...
分类:
编程语言 时间:
2017-06-01 13:14:28
阅读次数:
255
记得以前有人问过我,网页去重算法有哪些,我不假思索的说出了余弦向量相似度匹配,但如果是数十亿级别的网页去重呢?这下糟糕了,因为每两个网页都需要计算一次向量内积,查重效率太低了!我当时就想:论查找效率肯定是要考虑hash算法,相同字符串的hashcode肯定相同,不同字符串的hashcode却是大不相 ...
分类:
编程语言 时间:
2017-05-29 22:22:44
阅读次数:
347
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">又到了一个能够沉思的夜晚。近期事情比較繁杂,大脑全然平静不下来。就想着研究点东西来平复一下。</span> 非 ...
分类:
编程语言 时间:
2017-05-24 14:41:58
阅读次数:
289
前言 数据倾斜调优 调优概述 数据倾斜发生时的现象 数据倾斜发生的原理 如何定位导致数据倾斜的代码 查看导致数据倾斜的key的数据分布情况 数据倾斜的解决方案 解决方案一:使用Hive ETL预处理数据 解决方案二:过滤少数导致倾斜的key 解决方案三:提高shuffle操作的并行度 解决方案四:两 ...
分类:
其他好文 时间:
2017-05-23 13:16:57
阅读次数:
284
一、浏览器和服务器的传输过程 1.浏览器将自己支持的一套加密规则发送给网站。 2.网站从中选出一组加密算法与HASH算法,并将自己的身份信息以证书的形式发回给浏览器。证书里面包含了网站地址,加密公钥,以及证书的颁发机构等信息。 3.获得网站证书之后浏览器要做以下工作: a) 验证证书的合法性(颁发证 ...
分类:
其他好文 时间:
2017-05-23 00:25:59
阅读次数:
215
1、认证流程:(1)主机(Host)生成256位摘要(挑战),发送给ATSHA204芯片(Client),进行挑战;(2)ATSHA204芯片使用HASH算法将摘要信息和自己的密钥进行计算,得到响应1;(3)同时,主机使用HASH算法将该摘要信息和自己的密钥进行计算,得到响应2;(4)主机将响应1和 ...
分类:
其他好文 时间:
2017-05-22 12:07:48
阅读次数:
256