摘要:
一、前言 个人感觉序列化简单来说就是按一定规则组包。反序列化就是按组包时的规则来接包。正常来说。序列化不会很难。不会很复杂。因为过于复杂的序列化协议会导致较长的解析时间,这可能会使得序列化和反序列化阶段成为整个系统的瓶颈。就像压缩文件、解压文件,会占用大量cpu时间。 所以正常的序列化会在时间和空间 阅读全文
摘要:
本来这一篇是打算写包头在分布式平台中的具体变换过程的。其实文章已经写好了。但是想了这个应该是不能随便发表的。毕竟如果知道了一个包的具体每个字节的意义。能伪造包来攻击系统。其次来介绍一个包的具体变换过程意义不大。在每个分布式系统的里。包的扭转应该是个有不同。我们着重的应该是一种思想。一种共性。而不是个 阅读全文
摘要:
首先名字要取得霸气才能吸引人气,哈哈~~ 下面简单介绍下情况。框架是腾讯电商平台的分布式框架。虽然腾讯拍拍已经玩完了。但是这套框架还是很不错的。而且据原腾讯同事说微信也是用的这套框架。源码肯定是不能说的。但是介绍大体的思想我想应该没问题。虽然在这个框架下写了一年多的业务代码。但是平台框架的代码一直没 阅读全文
摘要:
本来一篇文章就该搞定的。结果要分上下篇了。主要是最近颈椎很不舒服。同时还在做秒杀的需求也挺忙的。 现在不能久坐。看代码的时间变少了。然后还买了两本治疗颈椎的书。在学着,不过感觉没啥用。突然心里好害怕。如果颈椎病越来越重。以后的路怎么走。 现在上下班有跑步,然后坐一个小时就起来活动活动。然后在跟着同时 阅读全文
摘要:
每周一篇又来了。这次主要介绍netio的buffer管理器。 首先buffer管理是每一个网络层不可回避的问题。怎么高效的使用buffer是很关键的问题。这里主要介绍下我们的netio是怎么处理。说实话 这是我见过比较蛋疼buffer管理。 反正我是看了好几天 才看明白的。 最近看了下Qcon201 阅读全文
摘要:
IPerf是一个开源的测试网络宽带并能统计并报告延迟抖动、数据包丢失率信息的控制台命令程序,通过参数选项可以方便地看出,通过设置不同的选项值对网络带宽的影响,对于学习网络编程还是有一定的借鉴意义,至少可以玩上一段时间。 IPerf开始出现的时候是在03年,版本是1.7.0,在网上找到的仅有的系列源码 阅读全文
摘要:
由于需要在项目中增加Websocket协议,与客户端进行通信,不想使用开源的库,比如WebSocketPP,就自己根据WebSocket协议实现一套函数,完全使用C++实现。 代码已经实现,放在个人github上面,地址:https://github.com/jice1001/websocket.g 阅读全文
摘要:
对于IPerf源码解析,我是基于2.0.5版本在Windows下执行的情况进行分析的,提倡开始先通过对源码的简单修改使其能够在本地编译器运行起来,这样可以打印输出一些中间信息,对于理解源码的逻辑,程序实现的过程能够起到事半功倍的效果。 IPerf主要分为如下几个模块: 选项参数处理; 线程封装和角色 阅读全文
摘要:
【线程的生成】 生成线程时需要传入一个thread_Settings类型的变量,thread_Settings包含所有线程运行时需要的信息,命令行选项参数解析后所有得到的属性都存储到该类型的变量中,作为线程生成的传入值能够决定当前线程扮演的角色。 thread_Settings结构中有两个threa 阅读全文
摘要:
本篇随笔讲述一下TCP协议下,双向测试模式和交易测试模式下客户端和服务端执行的情况; 双向测试模式: 官方文档的解释 Run Iperf in dual testing mode. This will cause the server to connect back to the client on 阅读全文