- 博客(14)
- 收藏
- 关注
原创 实时数据传输压缩
在项目中遇到设备按照 5HZ 的高频率上报 UDP 实时数据包,设备端时不时在这里面增加一个字段,现在 UDP 数据包大小已经膨胀到了 5000 字节,感觉对系统通信形成比较大的压力,这里打算对这个实时数据上报进行优化.实时数据大概结构。
2025-04-05 11:22:23
206
原创 Golang 并发-findOrCreate
这种实现方式可以有效地处理并发情况,同时通过双重检查机制减少了获取锁的次数,提高了性能。对于大多数已存在设备的情况,可以直接在第一次检查时返回,避免了加锁开销。在并发的处理过程中经常遇到 FindOrCreate 需求,即某对象存在则直接返回如不存在则进行创建并返回,这里进行一下记录。
2025-04-05 10:02:31
25
原创 资源同步选型分析
在项目中通过 web 编辑的地图元素需要同步到设备端,即每次地图更新都需要尽可能快的同步到多个设备端。在之前更新同步设计中使用了 protobuf 作为工具压缩数据大小,大致方式是:这种方式确实大大减少了传输的数据大小,protobuf 处理后大概 7MB,GZIP 处理后大概 3MB,但是这样整体数据包还是过大,每次更新都会占用 3MB*N 设备的带宽,设备端解析这么大的数据包也有一定的耗时。针对每次更新同步的数据量还是过大问题,设计新方案:思考过程杂记:按照这个方式每次修改更新,需要同步的数据量明显降低
2025-03-11 23:08:17
238
原创 Rust 学习-引用与解构(destructure)/解引用(dereference)
解构引用允许你提取和处理引用指向的值。对于Copy类型,你可以直接提取值。对于非Copy类型,你可以直接匹配引用或使用ref在匹配分支内创建一个引用。当处理结构体时,你可以解构引用以直接访问它们的字段。这些模式确保了 Rust 的借用和所有权规则得到遵守。
2024-07-21 21:25:58
471
原创 Cesium日常——camera.lookAt bug?
camera.lookAt bug?cesium日常问题记录:camera.lookAt 造成相机控制异常问题详情 :解决方案:cesium日常问题记录:camera.lookAt 造成相机控制异常问题详情 :在使用camera.lookAt之后,造成问题:cesium内置的鼠标控制相机功能发生改变,例如:鼠标右键的挪移后相机是绕中心点旋转,而不是平移flyto也会变得很诡异(虽然跳...
2019-05-17 11:15:16
2053
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人