摘要: 1.pink 介绍:qihoo出版的高性能网络服务处理框架 地址:https://github.com/PikaLabs/pink 其他:两种模式,1种各个worker线程竞争accept新连接 1种一个dispatch专门处理accept新连接,然后通过queue传递给各个worker线程 2.p 阅读全文
posted @ 2018-05-03 16:50 dodng 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 目标是实现redis集群的无感知弹性扩容 关键点 1.是无感知,即对redis集群的用户来说服务ip和port保持不变 2.弹性扩容,指的是在需要时刻可以按照业务扩大redis存储容量。 1.业务场景 1.redis集群某个业务容量不足,需要扩容 2.redis集群需要一个为一个新业务分配存储容量 阅读全文
posted @ 2017-10-30 11:01 dodng 阅读(3163) 评论(5) 推荐(2) 编辑
摘要: 公司的底层检索引擎已经用了10年,很稳定也没有很大的重构需求,直到最近PM报了很多数据更新不及时的问题, 加上最近我也有个想法实现一个轻量级的检索引擎,于是用了不到2个月算是完成第1版(github地址:https://github.com/dodng/comse) 一是尝试解决现有公司的检索系统中更新时效性的问题,二是把自己对检索服务的理解动手实践一下。 阅读全文
posted @ 2017-04-06 16:18 dodng 阅读(4991) 评论(2) 推荐(1) 编辑
摘要: 1.有序数组的平方 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 https://leetcode.cn/problems/squares-of-a-sorted-array/description/ class Solution 阅读全文
posted @ 2024-03-21 15:06 dodng 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 1.二分查找 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1 https://leetcode.cn/problems/binary-search/description/ cl 阅读全文
posted @ 2024-03-20 11:14 dodng 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 1.map reduce 计算模型 介绍:https://blog.csdn.net/v_july_v/article/details/6637014 关键流程图示意: 2.shuffle过程 介绍:https://www.zhihu.com/question/27593027 简单流程图: 2.s 阅读全文
posted @ 2018-07-25 16:24 dodng 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 1.比赛结果 2.比赛整体感觉 初赛的题目是写一个代理实现高性能的协议解析和转发,复赛是是实现一个单机的100g的mq存储。 题目都和io有关,自己实际在比赛过程中,实现了一套能跑的方案后,后续优化的效果不明显,例如 初赛第一版6140qps,后续只优化到6470qps。 复赛第一版67w,后续只优 阅读全文
posted @ 2018-07-13 14:15 dodng 阅读(1995) 评论(1) 推荐(1) 编辑
摘要: 1.原始架构,要有id,group 2. 数据分片方案假设是id%2==0 的group0和id%2==1的group1,把group1的数据迁移到新的存储中,过程中应该不在有数据的更新操作。 3.前端把id%2的计算加到实现中,即id%2==0的打上group0的标示,id%2==1的打上grou 阅读全文
posted @ 2018-05-15 20:52 dodng 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 1.介绍 hiredis: 一个c/c++的访问redis的api库 地址:https://github.com/redis/hiredis pipeline方式: redis中的pipeline方式,指的是把多次请求交互封装到一次完成,只交互一次,类似于多个请求“批处理”成一次交互 好处: 同样是 阅读全文
posted @ 2017-12-19 16:23 dodng 阅读(3726) 评论(0) 推荐(0) 编辑
摘要: 其中调用函数的实现是 阅读全文
posted @ 2017-07-25 18:48 dodng 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 1.map和set中内存释放用swap,但是进程并没有释放内存 是不是STL容器自己的内存管理机制没有释放内存给操作系统? 做实验,代码如下: 实验1 使用map自己定义的内存适配器test_map函数和 直接用new的test_new函数做对比 发现2个程序在test_map和test_new执行 阅读全文
posted @ 2017-05-25 19:14 dodng 阅读(280) 评论(0) 推荐(0) 编辑