- 博客(6)
- 资源 (23)
- 收藏
- 关注
转载 以太猫源码分析
CryptoKitties 做了很棒的工作,他展示除了简单的金融交易之外还可以使用区块链做什么。我希望将来我们会看到更多创新的区块链用法,所以我想快速浏览CryptoKitties背后的代码,以展示它背后是如何实现的。本文是为开发人员编写的,虽然这不是一个绝对的初学者对Solidity的介绍,但是我试图包含文档的链接,以便尽可能适合所有开发者。让我们开始...CryptoKitties源码几乎所有...
2018-05-31 18:32:43 970
转载 [Linux] lsof的错误使用场景和查看打开文件数的正确方法
前两天在调查一个"too many open files"的问题,和之前一样,自然而然的用到了lsof,加上一堆漂亮的命令组合来查看哪些程序打开了很多文件。lsof | awk '{print $2}' | uniq -c | sort -rnk1 | head 啪的一敲回车,很顺利的定位到几个docker内运行的Java进程排在最前,分别都是几万的结果,怀疑是不是docker的问题。很不幸的是,...
2018-05-11 10:14:28 1147
原创 DPDK2.2.0开发杂记四—— DPDK编译架构的集成
DPDK有自己的一套编译架构,进行DPDK应用开发时,为了保证与DPDK库保持相同的编译选项及编译预置常量,我们需要融合DPDK的编译架构编写应用的Makefile 文件。以下为我开发过程中总结的一些点:1. 需要设置环境变量RTE_SDK,使编译脚本能够找到DPDK链接库 设置环境变量有两种方式: a) 使用export命令可以查看或设置环境变量,设置方...
2018-04-27 18:29:50 718
原创 DPDK2.2.0开发杂记三—— 关于多主进程的大叶内存分配问题
DPDK是以网卡收发机为中心进行的性能优化,多进程部署一般是每台server上部署一个primary进程,其他进程为secondary进程。主进程负责全部大叶内存的初始化,次进程只进行大叶内存的attach。这种结构需要primary进程保持相当的运行可靠度。否则,一旦primary进程down掉,primary进程自此启动要不要清大叶内存重新初始化,清的话会影响正在运行的seco...
2018-04-25 21:46:20 1124 1
原创 DPDK2.2.0开发杂记二—— 关于系统兼容性编译选项
由于DPDK追求提高性能,在编译层面默认打开了许多优化选项,默认根据编译环境CPU所支持的指令集进行优化。但是当部署的时候,一旦编译环境与部署环境硬件层面不一致,可能部署环境CPU不支持某些指令集,这样就会导致应用进程无法在部署环境上正常启动。当部署的服务器很多,我们无法保证所有硬件都是完全一致的情况下,我们就需要关闭一些优化选项牺牲一些性能使之能成功部署。然而DPDK编译逻辑复杂...
2018-04-25 20:34:59 1606
原创 DPDK2.2.0开发杂记一—— 网口抓包分片禁止及MTU配置
1. 禁止网口抓包分片 DPDK收发包是基础核心模块,网卡需要应用进程进行配置并启动,测试过程中发现DPDK驱动igb_uio抓包可能会出现mbuf串。当网络包比较大时,DPDK驱动会把包进行分片放到一组Mbuf中并进行链接成串,应用进程从接收队列中取出的可能就是Mbuf串,如果要进行深层解析需要应用进程自己进行重组,给应用进程造成负担。在实际应用中我们可以增大Mbuf大小禁止掉DP...
2018-04-25 19:08:06 3929
rfc6282.txt.pdf
2020-04-26
rfc6550.pdf
2020-04-26
Intel® Ethernet Controller X710/ XXV710/XL710 Datasheet
2018-08-28
GCC Documentation
2018-04-25
Berkeley Packet Filter (BPF) syntax
2018-04-25
intel 64汇编指令集完整版(原版共3卷)
2016-12-19
windous下perl-gui编程模块 Win32-GUI-1.06-PPM-5.8
2010-10-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人