https://geek-docs.com/vscode/vscode-tutorials/vscode-code-debugger.html
首页 | 归档 | 分类 | 标签 | 关于 |
|
在使用 vim 的时候,发现打开 json、yml 文件的时候,vim 显示不正确。暂时还没有解决这个问题
vim -V9 tmp.log 可以看到 vim 在运行的时候debug 日志
负载均衡建立在现有的网络结构之上,它提供了一种廉价、有效、透明的方法,扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
负载均衡有两方面的含义:首先,大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个运算量较大的操作分担到多台设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力可以得到大幅提高
哈希表是一种非常高效的数据结构,它是通过散列函数将key映射成数组下标以达到O(1)算法复杂度的高效数据结构。但是对于不同的key哈希函数算出的结果可能出现冲突,也就是出现了哈希碰撞,解决碰撞的方式通常有:开放地址法、再哈希法、链地址法。今天要介绍的是一种称为多阶哈希的Rehash方法。
多阶Hash的实现原理并不复杂,每个Hash桶算作一阶,如果有4阶的多阶Hash,那么就是一个二维数组,第一维是Hash桶的阶数编号,第二维是对应阶编号下Hash桶的每个槽的位置。如下图所示:
每阶槽的个数都是质数个,每阶槽的个数依次递减。由于互质的特性,通常情况下会上面的阶数先被填满,然后再逐步填下面的阶数。在实际使用中,内存使用率可以达到90%以上。查找和插入的复杂度都是O(h)其中h是阶数。
首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率最大的几个)及相应的频率。然后再在这1000个最大的IP中,找出那个频率最大的IP,即为所求。
算法思想:分而治之 + Hash