月度归档:2016年10月

electron 使用tcp套接字(四)总结

为什么要用electron

很多时候我们需要对C++服务器写业务测试, 这个时候我们会使用C++写测试代码, 众所周知, 使用C++写UI是非常麻烦的, 如果接口过多的时候, 我们的测试程序会越来越复杂, UI线程与后台线程交互会非常复杂, 发展下去会发现, 测试会变得不可控, 如果不写UI直接使用console程序做测试, 又会丧失灵活性. 所以我们需要一些UI解决方案.
继续阅读

electron 使用tcp套接字(三)使用protobuf

protobuf

protocol Buffers简称protobuf, 是一种数据储存格式, 将数据的序列化, 然后反序列化,非常高效而且与语言平台无关, 通常被用于数据存储或是RPC数据格式交换。 pb和json一样, 属于业务层协议.
继续阅读

electron 使用tcp套接字(二)使用bytebuffer

buffer

每个socket拥有自己的read buffer 和 send buffer, 但是这里我们讨论的不是socket的buffer, 而是我们业务层的buffer. 在tcp套接字中, 当我们一次发送过量的数据, 或是其他情况的时候, socket底层可能会分为多个包发送, 这个时候我们就需要用buffer粘包.
继续阅读

时间戳转换日期

前言

时间戳转日期是我们最常用的需求, 一般情况我们会采用系统提供的localtime或localtime_r来转换, 可是localtime是线程不安全的, 而且两个都是通过系统调用来实现的, 如果在大量调用的时候, 会导致整个系统性能低下, 这也就是为什么我们要通过数学的方法转换时间戳.
继续阅读

写一个合适的监控运维系统-04-使用zabbix

什么是zabbix

zabbix 是一款异常强大的分布式系统监控工具, 几乎可以监控到系统的所有东西, 并提供了报警绘图等等一系类我们需要的工具, 几乎是应有尽有. 同时它提供了一套完整的api, 第三方工具可以通过api获取zabbix的数据. 这里我们就是通过api获取zabbix的数据, 给到我们自己的监控系统, 作为数据参考. 这样我们无需自己再写一个agent, 去获取系统数据了!
继续阅读