数据回传的设计

多系统交互,回传的设计。

最初设计,添加一张回传表。将需要回传的数据(最近一两天)放到备份表里,重试6次,超6次不再回传。
但是有个问题,不能很好的把控范围,虽然主键可以避免重复,但是总会多扫。
回传表设计:
id
serial_no 序列号(对应唯一标识)
type 类型(例如,有多中不同场景要回传)
status 状态
times 次数
create_date 创建时间
update_date 更新时间

联合约束:
可以根据id、serial_no、type一起来做约束。

优化方案:
实际回传肯定应该放到主表里,根据条件筛选,一目了然。
最初设计回传表的原因估计是怕产品迭代,所以尽量不改标准产品。后续产品兼容了扩展字段,就不存在这个问题了。
主表新增3个字段(或是扩展表新增3个字段):
callback_status 回传状态 0未回传(默认) 1已回传
callback_times 次数
callback_message 信息,这里不用做list,可以用逗号分隔,将每次的提示信息都拼接起来,是够用的。

但是有一类数据是不能做到主表的,就是预数据。
例如没有落到主表,预数据删除了,也不会存库,这样的才需要存到备份表。

两者结合才算是比较好的方案。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
单片机中经常需要通过接收外部设备的数据来完成一些控制操作,而中断则是这个数据接收过程中必不可少的一步。在这个问题中,我们要实现的就是将pc机发送过来的数据通过中断接收到单片机中,并在接收完毕后将反馈信息再次发送给pc机,同时控制led的显示。 首先,我们需要在单片机的程序中设置中断接收功能。具体来说,就是要先定义一个中断服务函数,用于处理接收到数据后的操作,然后再将这个中断函数与中断源相连接,实现中断触发的机制。 接下来,我们需要设计一个数据传输协议,以便让单片机和pc机之间能够进行数据的传输和解析。例如,我们可以设置一个8字节的数据包格式,其中包含了一个起始标志、数据长度、操作指令、校验码等信息,以便实现数据的可靠传输和解析。 接着,我们需要编写单片机程序,实现数据的接收解析和反馈操作。具体来说,就是在中断服务函数中,读取接收到的数据,解析出数据包中的信息,并进行相应的操作。例如,如果接收到的操作指令是控制led灯亮起,则可以使用单片机的GPIO口来对led灯进行控制。 最后,我们需要将操作结果反馈给pc机,以便pc机知道数据已经成功传输到了单片机中。具体来说,就是将反馈信息打包成相应的数据包格式,并通过串口发送给pc机。 综上所述,单片机中断接收pc机数据回传给pc机,并控制led显示的问题,需要我们完成多个步骤,包括设置中断接收、设计数据协议、编写程序、进行数据解析和反馈。只有通过完整的系统设计和严谨的程序编写,才能实现数据的可靠高效传输和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值