自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(347)
  • 资源 (1)
  • 问答 (4)
  • 收藏
  • 关注

原创 蹄疾步稳,勇毅笃行,小白的大学四年

很可惜我是一个没有丰富大学经历的人,我没法通过各种五彩斑斓的故事告诉你大学应该是一个充满浪漫主义色彩的乌托邦,你可以在其中放肆,快乐而又充实的走过转瞬即逝的四年,但是我终究还是想向还在读书的学弟学妹提一些建设性的意见的,但无奈一次又一次自信后被打脸的经历告诉我个人的想法很多时候愚昧且短浅,且计算机市场还是如此瞬息万变的情况下,我实在不敢误导学弟学妹们,只能说阐述我摸爬滚打的一路遇到了怎样事情,以及我学习路上的一系列自己遵守的铁律。............

2022-06-15 21:25:18 1785 5

原创 和琪宝的重庆之旅~

因为疫情的原因,毕业旅行我和琪宝并没有选择一次到多个地方,而是打算把想去的地方一次一次去,我们的第一站是重庆,因为来回是坐的高铁,西安到重庆基本是5小时起步,所以虽然一共去了四天,但是刨去路上的时间,实际玩的时间只有两天半。这篇文章会聊聊我们玩过的地方以及一些可能不那么靠谱的旅行建议(毕竟我只玩了两天半。)......

2022-06-04 17:36:27 2265 7

原创 Morsel-Driven Parallelism: 一种NUMA感知的并行Query Execution框架

前几天和琪宝去了一趟重庆,近一周之内没有出行计划,又逢毕设答辩延迟了几天,遂难得的有了几天空闲时间钻研下自己感兴趣的知识,便想到那个 NUMA Aware 的题目。大概花了一天时间温故了一下NUMA相关的问题,包括几篇NUMA导致毛刺的排查过程,NUMA API的使用(包括migrate_pages和mbind这两个系统调用,和numactl,numademo,numastat这几个终端工具),几种memory policy的实际意义以及可能与NUMA相关的PMU获取方式。.........

2022-06-03 23:16:24 1531

原创 从BMC看出一个 idiot 的思维变化

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。那一天我二十一岁,在我一生的黄金时代。我有好多奢望。我想爱,想吃,还想在一瞬间变成天上半明半暗的云。后来我才知道,生活就是个缓慢受锤的过程,人一天天老下去,奢望也一天天消失,最后变得像挨了锤的牛一样。可是我过二十一岁生日时没有预见到这一点。我觉得自己会永远生猛下去,什么也锤不了我。大学生活没什么意外的话确实是要结束了。毕设开始是在CL

2022-05-22 21:05:11 1496

原创 关于跑满指定CPU时间片的一些细节问题

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言记得两年以前就和实验室的朋友们讨论过如何使得指定CPU跑到指定特定百分比,但可惜当时并没有令我信服的答案出现,两年以后再学习了Chaosblade,Chaos-mesh,stress-ng的部分源码以后终于可以说我知道这个问题该如何优雅的解决了。问题抽象一下,其实就是保证每秒某个CPU只跑到目前频率(不考虑变频)的百分比,其实满足此需求

2022-05-22 15:18:16 1551

原创 关于IO故障注入的系列Trick

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言我不是人肉朴素贝叶斯工具人。故障注入的方法论我认为就是在调用路径上寻找可行的侵入点,但是如何确定调用路径呢?就以我们要谈的IO注入来看,大体可以把执行流划分为内核态和用户态(不考虑网络文件系统)。用户态的的逻辑其实很好搞清楚,判断下是否使用-static强制静态链接,是否使用-z,now提前载入所有的动态链接,使得GOT表不可写,以防

2022-05-21 19:24:23 1994

原创 浅谈从混沌工程引出的一点理解

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。起源Chaos engineering is the discipline of experimenting on a distributed system in order to build confidence in the system’s capability to withstand turbulent and unexpecte

2022-05-20 16:57:23 1325

原创 记玄妙莫测的透明代理

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。若无特殊说明,内核源码版本为4.16.1文章目录引言源码解析tproxy_tg4_v0tproxy_tg4nf_tproxy_get_sock_v4IP_TRANSPARENT总结引言Cool!一种完全透明的流量劫持方式。从功能来看类似于让操作系统充当路由器,或者内置一个代理服务器,并允许部分流量被转移到用户空间处理,除此之外与ipta

2022-05-20 15:56:54 3772

原创 谈谈几种Logging Schemes

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言再次忙里偷闲,抽出一晚上时间来记录一些文字。动笔写这篇文章纯属巧合,按照计划今天下午我本应该回趟宝鸡和家里人吃顿饭的,奈何昨天忘了做核算,今早九点便起床(对昨天晚上疯狂焦虑的我而言已经够早了)赶往最近的核酸检测点,但却被告知明早九点才出结果,只好作罢,又把回家的日子往后推了一周,这也使得今天晚上多出了一些时间(当然也可以说这是未来的时间)

2022-05-02 20:50:46 1924 2

原创 gettimeofday飞快的根因:vdso

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。内核版本 5.4.119引言众所周知工作时间等于工作效率乘以工作总量,我一直认为效率的权重远大于时间,这也是我从大一开始就逃课睡觉打豆豆的原因。大抵总会有一个更加显然的例子,比如一个下山的功夫,一个叫做adl的坏家伙便把我从一个现实主义者变成了虚无主义者;再比如半个小时的功夫,我就强迫y7n05h,adl以及我搞定了这个看似有点难以解释的小

2022-04-25 14:25:04 4194 5

原创 再谈Linux服务端编程

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言socketbindlistenaccept / accept4connect总结引言存在于想象中首届卷心菜之夜的talk题目,但是我更愿意称其为上一次思考[1]的续集。这篇文章其实就是想搞清楚Linux服务端编程中几个基本问题,也提出了几个以前让我疑惑的问题,当然以后让我疑惑的问题以后也会平等对待,文章其实只是我笔记中的拷贝

2022-04-24 22:02:04 1729 3

原创 把Qos扯到排队论上去

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言悔恨呐,我说过很多次大学期间最遗憾的事情就是没好好学数学,以至于现在提到概率论,统筹学脑子里一片空白,就连算是好好刷过题的离散也基本不剩什么了。Qos Vulnerabilities事实上我们总会对客户做出Qos的保证,但是Kernel如此复杂,牵一发而动全身,可怜的Qos受到了除了用户态的一些限制以外的威胁。memcache是一个极

2022-04-14 21:43:00 1636

原创 从sk_buff中的线性区与非线性区到 bpf_skb_pull_data

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。内核版本为5.4.119引言我的读者应该都会知道我最近陷入了协议栈前加速内存数据库这个项目中不能自拔[5],这篇文章来阐述一个在实现过程中遇到的问题。首先阐述现象,然后引入skb_buff的线性区与非线性区,最后分析内核中bpf_skb_pull_data的实现。现象阐述有兴趣的朋友可以看看代码,其中brc_rx_filter_main

2022-03-29 23:05:03 3664 2

原创 eBPF: 从 map 到 BPF_MAP_TYPE_QUEUE 源码解析

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。内核版本为5.4.119引言这篇文章的初衷是解决以下几个问题:Map的原理到底是什么,如何做到用户态内核态之间互相交互?Map的内存分配是怎么做的?在操作queue的时候需要使用栈上变量,并传入一个栈上指针,这样做是否有危险呢?当然读者可能会认为有一些文不对题的嫌疑,事实是kernel中这部分的代码非常简单(queue和stac

2022-03-24 17:53:05 1923

原创 eBPF: 深入探究 Map 类型

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。内核版本为5.4.119引言前面几篇文章提到为了加速内存数据库,我需要在内核里面放置一块缓存,原理其实和DB前面放置一个cache,CPU cache大同小异,我有很多文章已经描述过这个问题了[5][4][6][7],无非前者为了跳过协议栈,后者为了跳过DB和访存操作,也就是说功能上三者应该是差不多的,当然需要解决的问题也是差不多的,基本重

2022-03-19 20:46:17 2903 2

原创 Linux 内核网络栈分析: 接收数据

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言对于内核网络栈的分析我在大二听了李勇大神来小组的讲座以后就想干了,但像很多主题的文章一样,始终没有勇气,也没有时间动手,我终究还是把这个话题从大二延到大三,从大三延到大四了。冥冥之中某种东西好像早已是安排好的,毕设本来老陈要求的的是自由发挥,我抱着对数据库的兴趣发掘出一个协议栈前加速内存数据库的题目,想着在XDP和TC加点勾子就收工的题目

2022-03-17 23:01:26 2389 4

原创 eBPF: 从 BPF to BPF Calls 到 Tail Calls

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言参考linux安全之seccompUsing seccomp to limit the kernel attack surfaceSECure COMPuting with filtersseccomp(2) — Linux manual pagebpf: introduce bpf_tail_call() helper

2022-03-14 18:36:49 3868 3

原创 eBPF: Traffic Control Subsystem

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。

2022-03-11 17:11:24 3372 2

原创 聊聊M1机器上一些必踩的坑

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言一个恍惚灵魂就从昨天晚上飘到现在。公司需求还没有做完,TimeLine上也有一系列高优先级博客未写,论文未读,人在压力面前总不是永远都可以有充沛的勇气和精力去抗拒的,我属实应该被归到摆烂的那一类人里,然后躺在地上,任它蹂躏我。其实也算是忙里偷闲,这一周虽说没干什么有意义的事情(准确的说是这半年,可能是一年,除了决定了自己未来在哪里吃饭拉屎

2022-03-06 22:39:33 4762

原创 从Redis到兼容Redis的现代云原生数据库

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言这篇文章起源于对[4][5]学习后的一些思考。Redis官方对于Redis的定义如下:in-memory data structure store, used as a database, cache, and message broker.事实上从商业,开源,技术的方面来说Redis是过去10年间最优秀的数据库产品之一,但是其

2022-03-04 20:33:08 1295

原创 微软技术探究之FASTER

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言微软在2018 SIGMOD Transactions and Indexing Session 中发表了一篇名为《FASTER: A Concurrent Key-Value Store with In-Place Updates》的paper,文章提出了一种在更新密集,访问模式多表现出时间局部性,允许工作集大于内存,访问操作多为点读,

2022-03-03 21:13:34 1530 2

原创 [问题解决] docker run 端口映射失败且无报错

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。Docker版本:2:1.13.1-96.gitb2f74b2.tl2问题描述网上对于这个问题的已有回答在这一个时间点看来都没什么意义。启动容器的时候进行端口映射,不报任何错误,但是所有端口都映射失败,如下显示:在容器内部执行tcpdump -i bond1 port 24761可以看到宿主机可以收到数据包,但是容器内部收不到。问题

2022-01-11 16:03:25 4598 1

原创 Don‘t Put a Cache in Front of Database

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言为什么需要缓存原因DynamoDB Accelerator(DAX)总结引言这篇文章是看到西雅图大佬推的一篇文章以后产生的一些想法。paper本身很有意思,即为什么不建议把 Cache 放置在Database前面,这其实是一个与我个人传统认知相悖的一个题目,事实上在我还不知道数据库到底是什么东西的时候就听过做JavaWeb的同学

2022-01-09 21:27:25 889

原创 从历史见证未来,Distributed SQL?云原生数据库? 多模型数据库?

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。回顾历史自1970年 Codd 祖师爷提出关系模型开始,关系型数据库在五十多年的时间中蓬勃发展。早期互联网的流量并不想我们现在所处的年代,QPS的需求往往百级别就绰绰有余,但是2000年左右互联网应用如雨后春笋,一时间庞大的资源要求远超传统的软件服务,在这种日益增长的极端需求下,对并发性能,可用性的需求变得极为迫切。传统数据库注重于实现强A

2022-01-08 21:31:34 1225

原创 从LevelDB SnapShot到内存快照的思考

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言LevelDB SnapShotMVCC的启发可回滚数据结构COW与ROWCgroup总结引言SnapShot技术在数据库领域的重要性不言而喻,这种记录整个数据库某一时间点全部视图并快速恢复的能力非常重要,这相当于是一颗后悔药。存储网络行业协会SNIA(StorageNetworking Industry Association

2021-11-14 16:23:45 1952 3

原创 对于LSM Tree写放大问题的一些浅薄学习

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言性能评估优化方案总结引言写放大(Write amplification)原本指的是在SSD上的一种介质本身的现象,即实际写入介质的数据量大于请求本身的数据量[1],由英特尔和SiliconSystems第一次提出[7][8],后来这个名词的含义逐渐宽泛了起来,即描述的是这种行为而不是特定的介质上的一种行为。早在大三的时候就写过一

2021-11-13 22:23:49 1958

原创 LevelDB中的Compaction流程

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言Compactionminor compactionmajor compactionMaybeScheduleCompactionBackgroundCompactionPickCompactionSetupOtherInputsMakeInputIteratorDoCompactionWorkInstallCompactionRe

2021-11-12 20:36:55 1359

原创 凝望深渊,并发控制的尽头

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言并发方案多核的实验环境相关优化算法无关优化2PL算法相关T/O算法相关相关分析Read-Only WorkloadWrite-Intensive WorkloadWorking Set SizeRead/Write Mixture一些有趣的结论多核与分布式系统总结引言随着数据库领域的蓬勃发展,并发控制算法也有了长足的进步,从悲观

2021-10-16 14:16:00 663 1

原创 Facebook技术探究:Delos中的虚拟共识机制

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言Delos细节总结引言这篇文章是对OSDI 2020 Virtual Consensus in Delos 的论文演讲以及论文的学习与思考,这篇文章中提出一种称为虚拟共识分层的思想。Delos首先我们来了解下Delos出现的背景。Facebook的软件栈分为数据平面与控制平面,控制平面需要处理大量的数据,对于控制平面来说

2021-10-08 18:17:24 672

原创 关于Raft算法中lease read正确性相关的探讨

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言参考:https://github.com/etcd-io/etcd/issues/741https://etcd.io/docs/v3.5/learning/api_guarantees/https://groups.google.com/g/golang-china/c/-Lb8p1Zaz3chttps://segmentf

2021-10-01 23:14:41 1554

原创 浅谈动态追踪:从SystemTap到bpfTrace

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言介绍工具30秒排查问题Top/Uptimedmesg -T | tail -n xvmstatmpstatpidstatiostatsar细化排错动态追踪SystemTapkprobes/uprobes原理kprobes特点与使用限制tapsets种类安全与保护措施有趣的命令行参数bpfTrace总结引言这篇文章的内容是Xiyo

2021-09-30 19:29:53 1683

原创 从Git的存储布局到Git的使用

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言.git目录解析git四大对象Committreeblobtagbranchindex(暂缓区)headerindexgit commitgit gc常用的命令有意思的脚本总结引言Git是一个分布式版本控制工具,我想其大名在当今互联网界可以说是无人不知,无人不晓。也许学生时代不是刚需,但是工作以后像腾讯,阿里这样的公司团队协作的

2021-09-30 16:06:22 459

原创 Multi-Raft在TiKV中的实践:Split与Merge

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言Region epochSplit触发时机split_checker_workerPD调度执行过程otherMergePrepareMergeCommitMergeother总结引言单一的Raft算法我们必然无法去承载极大规模的数据,因为所有的数据都需要排队,然后走一遍Raft的流程,我们无法做到多个操作之间的并行执行,所以Mu

2021-09-18 20:02:06 1365

原创 TiKV事务模型探究:Percolator

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。文章目录引言PercolatorTiKV中的应用Column Family读放大Latches缺陷总结引言TiKV是Google Spanner的一个开源实现,其作为HTAP(Hybrid Transactional and Analytical Processing)数据库TiDB的行存储引擎,以支持对OLTP(On-Line Trans

2021-09-16 13:40:01 1061

原创 在bpfTrace中使用USDT

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言USDT的全称是user-level statically defined tracing,是一种在用户态中埋点,以支持动态追踪的方案,埋点的优点基本可以阐述为以下三点:防止inline而导致无法监测到函数随版本迭代接口功能可以保证没有变化在不进行追踪时插入一条nop指令,在进行追踪时替换为int3。在不追踪时最大程度节省性能,代

2021-08-29 13:57:43 992 1

原创 perf基本使用与简单介绍

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言

2021-08-28 20:03:06 2601 3

原创 Off-CPU分析

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言当对于代码质量的追求从学校的看的过去就行到了工作的必须精益求精时,我想我们的程序在每一个时刻到底在干什么就显得尤为重要,说白了,就是可观测性,而且是高效的可观测,毕竟线上出问题需要排查时不可能让你GDB或者perf进去看一下,那么程序原生的监控框架,采样和动态追踪看起来就是不可缺少的。性能分析是个很庞杂的领域,祖师爷当属奈飞的brend

2021-08-18 21:25:03 1419 1

原创 记一次由内核版本引起的奇异问题

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言这篇文章在于去记录一个解决问题的过程,我想这种文章于我而言相比于一些无聊的笔记是有意思的多的。描述问题的起源在于现在要去分析多线程持有锁时花费在锁争抢上的时间,其实也就是因为锁竞争而导致线程挂起的时间,想到Stap,BPFTrace这种动态追踪方案可以很好的解决问题,而且机缘巧合之下在官网发现了有人已经写了这么一个Stap的脚本去解决

2021-08-12 11:48:09 745

原创 一个魔数引发的学习

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言在看Redis的代码的时候偶然间发现了一个魔数(叫魔数也不完全对,因为是一个规范的排列),就是下面这个东西:antirez大哥在注释中留下的一个链接很有意思,于是就抱着学习的态度周末浏览下这篇文章,顺便记录下学到的东西,这是这篇文章的由来。这应该是facebook的某个大牛工程师技术分享的主题,原文中留下了分享的视频和PPT,不过视频

2021-08-07 18:07:37 317

原创 Mac下编译安装phpredis

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。引言这篇文章是我很久没写过的配置文章,我一般情况是不写这种文章的,但是今天配置phpredis的时候着实是花了点时间,而且目前网上对这一套过程没人有一套完整的记录过程,所以花半个小时记录下这个过程,对于后来的像我一样的php新手能够快速上手。这一套流程就是去解决你以前机器上没用过php,然后突然需要redis php的客户端,跑下面的流程就

2021-08-06 21:26:47 285

GCC 10.2 2020年7月23日发布

外网上下的太慢,直接来这里取果实就好。ps:开源软件,收钱违法 虽然官网上说这个版本已经支持了C++20的部分特性,比如Coroutinue,Concept,飞船运算符等,但经过我的测试发现其实并没有支持,换句话来说编译C++20代码失败了,可能是我哪里操作有问题,大家使用以后也欢迎给出自己的想法。

2020-10-01

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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