项目标识: LC-屏幕校正, SR-StarRiver路灯控制, SE-SkyEye无线监控

20141103

  1. LC: 补项目申请单
  2. 升级 Redmine 2.5.2 => 2.6.0
    • 导出PDF对中文的支持更完善
  3. 升级 GitLab 7.2.1 => 7.4.3
  4. SR: 建压力测试数据库与曾磊测试带5000盏灯的性能
  5. SR: 建AES通信测试数据库,测试与唐德的加密通信
  6. SR: 调试AES密钥下发
    • 需唐德修复控制器逻辑

20141104

  1. SR: 考虑新数据库表设计
  2. SR: 202.11.4.69 上搭建服务器和模拟控制器进行压力测试
  3. SR: 记录5000盏灯负荷下,StarRiver、StarRiver Server的资源占用情况

20141105

  1. SR: 寻找VC6下使用64位整形以及字符串转换为64位整形的方法
    • 曾磊的客户端当前是32位的,数据库里任务ID是64位整形,仅用32位不足以满足长期高负荷运行需求。问题主要出在VC6编译器不支持当前C++标准的64位类型和标准库。
    • 以压力测试5000盏灯,后台加前台定时查询都开启的负荷,15:06运行到08:56一共15219425个任务。仅用32位ID的话,211天就会达到 numeric_limits<uint32_t>::max(),而用足64位ID则可以使用2.49e9年才达到 numeric_limits<uint64_t>::max()
    • 两种解决方案
      • 客户端直接不读ID,使用MD5来取任务
      • 客户端用微软的自定义类型 __int64,自写函数从字符串转换
  2. SR: server链接的boost.asio库从1.55.0升级到1.57.0。
    • 更新移除了一些Windows平台下对 deprecated socket api 的使用
  3. SR: 压力测试分析

20141106

  1. SR: 浏览唐德发来的CSA新协议
  2. SR: 调整任务处理流程以兼容通信程序作为服务端的模式

20141107

  1. 参观工博会
  2. SR: 检查压力测试的数据库log,寻找是否有slow query
    • 历史记录求平均的trigger耗时长,平均162.44s
    • 删历史记录的trigger耗时长,平均17.19s
    • 优化这两个query:慢的原因都是因为对timestamp类型的字段做了函数变换,于是用不了索引。写了优化的sql之后,能利用索引了,快了几个数量级……

20141110

  1. SR: 优化一个慢查询
    • 从详细状态历史汇总到每小时的历史,以前的设计每天做一次,log中的慢查询平均313.91s。
    • 现优化为每小时汇总上一个小时的历史,log中的慢查询平均25.77s。
  2. 浙江龙丽丽龙隧道灯需求讨论
  3. SR: 调整MySQL event执行策略,减少lock时间。

20141111

  1. SR: TaskDone 历史记录多达72GB时,删除旧任务的事件耗时过长,几乎无法完成。
    • 经过如下步骤,此后的 OPTIMIZE TABLE tbl_name 能回收磁盘空间了
      • 备份全部数据库
      • 设置 innodb_file_per_table
      • 清空全部数据库
      • 恢复备份
    • 调整清理历史的事件,改为每日零点清除全部旧历史
    • 效果:
      • 磁盘空间占用从80G降回5G
      • 每张表存放在独立的文件中
  2. SR: 调整StarRiver的测试压力。频率从3s/10s降至60s/300s。
    • 后台自动查询的频率保持10s/30s。
    • MySQL load从3.5降至0.4

20141112

  1. 解决 202.11.4.63 无法访问外网的问题
  2. SR: 修正一个 TaskTodo 未能成功清空的bug。
  3. 202.11.4.63 上的MySQL升级至官方的5.6.21版
    • 部分配置不向下兼容,做了调整
  4. SR: 数据库新的表结构设计讨论(曾磊、刘海斌)

20141113

  1. 帮顾华强解决虚拟机启动不了的问题。替换了一个系统文件,不兼容导致。
  2. SR: 按照昨天讨论结果修改数据库表结构
  3. SR: 区分工作模式,client / server
  4. SR: 开始写 TcpServer class
  5. 帮范一武debug C++代码

20141114

  1. SR: 后台自动查询仅在客户端模式下进行
    • 服务器模式下的自动查询范围不一样,待实现
  2. 原来使用的台式机win7系统故障了,开任何一个命令行程序都提示0x0000142错误
    • 武工直接换了一台新机器,下午装好VS和依赖的库文件,可以继续开发了
  3. SR: 服务器模式下,构造一个 tcp_server 监听数据库 SystemConfig 表中指定的端口号
    • 构造一个 ControllerConnectionShTcp 对象,用其中的 data socket 与连入的控制器通信
    • 处理类型为 0x0008 的注册指令。
      • 问题:确认帧发给控制器之后,控制器依旧连续不间断发来登陆帧,这个问题要联系唐德解决。
  4. SR: 全部头文件和库路径改成相对路径
    • boost用junction建一个soft link在 lib/boost_binary 路径下

20141115

  1. 新机器上恢复超级狗部署环境(秘钥、库文件)
  2. SR: 服务端模式添加连接池管理,以兼容原有的任务处理流程(未完成)

20141117

  1. SR: 修复新协议数据帧构造函数的bug
  2. SR: 扩展原有的回复帧函数,支持自定义响应码
  3. SR: 修改连接池实现,兼容服务端和客户端两种连接模式
  4. SR: 服务端接受连接以及新帧结构通信测试通过

20141118

  1. SR: 服务端模式下实现以下功能
    • 控制器不在线处理
    • 掉线处理(控制器idle后再次重连已经处理,控制器掉线待测)
  2. SuperDog 在 Windows 8.1 环境下的使用
    • 随开发狗的光盘上软件版本1.1,在 Windows 7 上使用正常,Windows 8.1 上安装驱动失败。
    • 邮件询问SafeNet的support,无回复。
    • 网上(非SafeNet官网,官网没提供下载)找到了2.2版的软件,安装及使用目前看都正常。

20141119

  1. SR: 服务端模式下实现以下功能
    • 控制器掉线处理
    • 定时状态查询
  2. 专利数据库/专利布局培训

20141120

  1. SR: 服务端模式功能测试
  2. SR: 准备调试环境,下周二现场调试。
  3. SR: 在唐德的笔记本上部署新协议的数据库和服务端,用于测试3G模块通信。

20141121

  1. SR: 与唐德调试3G控制器的通信

20141124

  1. SR: 改进读取逻辑,处理3G模块发来的垃圾字节。
  2. GitLab 升级 7.4.3 => 7.5.1 原先不完整的界面修正了。
  3. SR: 笔记本上完整搭建 StarRiver Server debug环境,明天与其他厂商联调。

20141125

  1. SR: 与其他厂商联调。
  2. 寻找自动化安装MySQL的方法
    • 有讨论这个问题的帖子,需要抽时间尝试一下方法是否可行
  3. SR: 修正3G通信时,受偏移影响错误解析帧格式的bug

20141126

  1. SR: 更新数据库设计及文档。
  2. SR: 调整读写逻辑,适应3G通信的延迟、丢包。
  3. SR: 测试长时间3G通信稳定性。
  4. SR: 增加一些log记录用于debug。

20141127

  1. SR: 昨晚又抓到一个 std::bac_alloc 异常,先设法重现它。
  2. SR: Windows 8.1 64位中文版 环境测试服务端和客户端程序。确认可用。
  3. SR: 网页版讨论(刘海斌、曾磊)
    • User表需添加字段
    • 地图处理方式
    • 后台更新策略
  4. SR: 数据库设计及文档更新。

20141128

  1. SR: 完善服务端模式错误处理。

results matching ""

    No results matching ""