Processing math: 100%
上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 69 下一页
摘要: 第一次接触订阅&&发布模型的时候是在openvswitch里面,其使用ovsdb-nosql数据库处理盒子产品的数据库控制平面; 目前看redis 的时候又看到了订阅&&发布,所以来看看源码以及其使用的数据结构! Redis中是如何实现此中模式的:??? 1.在RedisClient 内部维护了一个 阅读全文
posted @ 2021-10-27 20:05 codestacklinuxer 阅读(117) 评论(0) 推荐(0)
摘要: 转载 https://segmentfault.com/a/1190000019292140 SYN Flood 攻击 TCP连接建立时,客户端通过发送SYN报文发起向处于监听状态的服务器发起连接,服务器为该连接分配一定的资源,并发送SYN+ACK报文。对服务器来说,此时该连接的状态称为半连接(Ha 阅读全文
posted @ 2021-10-11 14:40 codestacklinuxer 阅读(248) 评论(0) 推荐(0)
摘要: 一次典型的跳表查询过程 skiplist上的查找路径展示 skiplist正是受这种多层链表的想法的启发而设计出来的。实际上,按照上面生成链表的方式,上面每一层链表的节点个数,是下面一层的节点个数的1/P(redis中P为0.25),这样查找过程就非常类似于一个二分查找,使得查找的时间复杂度可以降低 阅读全文
posted @ 2021-09-22 20:21 codestacklinuxer 阅读(53) 评论(0) 推荐(0)
摘要: 关于lock-free的问题,经典模型就是mpmc 无锁队列:具体可以参考之前的文章: lock-free队列 lock-free-progress-guarantees 无锁数据结构库liblfds dpdk lock-free-mpmc :https://dpdk-docs.readthedoc 阅读全文
posted @ 2021-09-17 11:44 codestacklinuxer 阅读(570) 评论(0) 推荐(0)
摘要: while sleep 1; do cat /proc/slabinfo | awk '{name=1;size=2*$4/4096; \ printf "%s %lu\n", name, size;}' | sort -n -r -k 2 | head -n 20; \ echo " ";d 阅读全文
posted @ 2021-09-15 11:19 codestacklinuxer 阅读(98) 评论(0) 推荐(0)
摘要: 目前又有需求做性能优化,都已经将mutex_lock 修改为cas atomic MPMC、Thread_local 等lock_free/原子/局部变量等相关操作,目前就缺用户态RCU了!so看下 怎么使用以及 性能怎样 What is RCU, Fundamentally? Is Paralle 阅读全文
posted @ 2021-09-14 20:58 codestacklinuxer 阅读(503) 评论(0) 推荐(0)
摘要: 今天被拉过来加班处理性能问题: 优化后对比的结果为:同样在5wcps的情况下,以前的cpu 使用率为90%, 现在cpu使用率为30%! 从cpu 角度看提高了很多, 同时perf top 结果看, close系统调用所占cpu也降低了不少 由于之前采用多线程架构存在如下问题: 1、批量的close 阅读全文
posted @ 2021-09-11 15:12 codestacklinuxer 阅读(239) 评论(0) 推荐(0)
摘要: printk简介 printk是在内核中运行的向控制台输出显示的函数,Linux内核先分配一个静态的临时缓冲区log_buf,然后调用vscnprintf格式化显示字符串,并返回格式化之后字符串的长度,最后调用tty驱动初始化注册绑定好的console.write()实现向串口输出。 目前新版内核解 阅读全文
posted @ 2021-09-05 10:38 codestacklinuxer 阅读(487) 评论(0) 推荐(0)
摘要: 5.4领导者/追随者(Leader/Follower) 1.问题 多线程是实现并发处理多事件的应用程序的一种常用技术。然而,很难实现高性能的多线程服务器应用程序。这些应用程序通常处理大量同时到达的多类型事件。为了有效地处理这种问题,有三个强制条件必须解决: 1)服务请求可以来自为每个已连接的客户机分 阅读全文
posted @ 2021-09-03 16:43 codestacklinuxer 阅读(95) 评论(0) 推荐(0)
摘要: 5.5线程特定的存储器(Thread-Specific Storage) 1.问题 为了避免竞争条件、资源耗尽和死锁多线程应用程序需要复杂的并发控制协议,从而难以编程。由于存在加锁开销,所以多线程应用程序的性能往往比不上单线程应用程序,事实上它们的性能可能更糟,特别是在多处理平台上。在并发程序中有两 阅读全文
posted @ 2021-09-03 16:40 codestacklinuxer 阅读(85) 评论(0) 推荐(0)
上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 69 下一页
点击右上角即可分享
微信分享提示