解决多用户及单用户在PC或者APP端控制同一台设备冲突问题

问题背景:在PC端与APP端使用同一套数据库来进行开发,前端显示为两套代码进行开发
问题描述:
   场景1:当同一个账号在PC端与APP端登录时,需要对同一台设备进行控制时,假设此时用户在PC端进行操作,那么在APP端需要同步PC端的数据,若是APP端再次进行操作时,会出现冲突的情况
   场景2:不同账号,控制同一台设备时,也会出现冲突的情况
问题解决:

      方案一:使用互斥锁来实现,当用户点击设备控制进入控制页面时,获取下此时设备是否被使用,若是被使用中,则提示用户设备在使用中,锁定状态下不允许进入控制页;若未使用则跳转至设备控制页,此时需要定时调用接口,将设备的使用信息(用户ID,设备ID,操作设备类型)给后端,若离开词页面,清除定时器,后端根据是否有用户操作判断是否释放此设备锁定状态。

   方案二:使用MQTT来实现此功能

     MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息传输协议。它被设计用来在低带宽、高延迟或不可靠的网络中进行通信,因此非常适合物联网(IoT)设备之间的通讯

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值