[quote=引用 7 楼 lijian910wolf 的回复:][quote=引用 6 楼 陈仲甫 的回复:]根据你的描述,需要频繁访问的设备记录大概只是一个终端ID和少量附加信息,那么这些可以存放在后台的DB中, 可能不需要上redis,尤其不需要直接redis做存储并拆分出这一块数据出去,因为你后台的DB很可能也要引用这些数据, 单单为了一点数据的访问速度去做整体架构的拆分,不值得。 不如把需要频繁访问的记录用redis做个缓存就好了,甚或是自己做个map\unordered_map的缓存也行啊(千万级别数据是没问题的,如果这点数据真的那么频繁使用,加一条16G的内存 300块,便宜得很,实际工程中这点成本可忽略不计) web前端服务器用到的数据仍然建议放到后台db中,如果是它只需要一部分比较冷的数据,可以做个间隔时间较长的缓存策略,定期同后台DB交换数据。 数据全部在后台DB,逻辑上好理解,备份恢复调试起来都方便,要分片也可以在后台做,通常这就够提供足够的性能了。毕竟你的后台和前端大部分情况下是高速直连的,为了省这个通信开销去动架构,好像太贵了。
[quote=引用 6 楼 陈仲甫 的回复:]根据你的描述,需要频繁访问的设备记录大概只是一个终端ID和少量附加信息,那么这些可以存放在后台的DB中, 可能不需要上redis,尤其不需要直接redis做存储并拆分出这一块数据出去,因为你后台的DB很可能也要引用这些数据, 单单为了一点数据的访问速度去做整体架构的拆分,不值得。 不如把需要频繁访问的记录用redis做个缓存就好了,甚或是自己做个map\unordered_map的缓存也行啊(千万级别数据是没问题的,如果这点数据真的那么频繁使用,加一条16G的内存 300块,便宜得很,实际工程中这点成本可忽略不计) web前端服务器用到的数据仍然建议放到后台db中,如果是它只需要一部分比较冷的数据,可以做个间隔时间较长的缓存策略,定期同后台DB交换数据。 数据全部在后台DB,逻辑上好理解,备份恢复调试起来都方便,要分片也可以在后台做,通常这就够提供足够的性能了。毕竟你的后台和前端大部分情况下是高速直连的,为了省这个通信开销去动架构,好像太贵了。
根据你的描述,需要频繁访问的设备记录大概只是一个终端ID和少量附加信息,那么这些可以存放在后台的DB中, 可能不需要上redis,尤其不需要直接redis做存储并拆分出这一块数据出去,因为你后台的DB很可能也要引用这些数据, 单单为了一点数据的访问速度去做整体架构的拆分,不值得。 不如把需要频繁访问的记录用redis做个缓存就好了,甚或是自己做个map\unordered_map的缓存也行啊(千万级别数据是没问题的,如果这点数据真的那么频繁使用,加一条16G的内存 300块,便宜得很,实际工程中这点成本可忽略不计) web前端服务器用到的数据仍然建议放到后台db中,如果是它只需要一部分比较冷的数据,可以做个间隔时间较长的缓存策略,定期同后台DB交换数据。 数据全部在后台DB,逻辑上好理解,备份恢复调试起来都方便,要分片也可以在后台做,通常这就够提供足够的性能了。毕竟你的后台和前端大部分情况下是高速直连的,为了省这个通信开销去动架构,好像太贵了。
[quote=引用 2 楼 陈仲甫 的回复:]可以在服务端加一层适配服务,将TCP指令交互转为http的通信,也就是给你的TCP后台加个专用的web前端,如果交互性要求比较灵活这个前端可考虑用websocket。
可以在服务端加一层适配服务,将TCP指令交互转为http的通信,也就是给你的TCP后台加个专用的web前端,如果交互性要求比较灵活这个前端可考虑用websocket。
[quote=引用 3 楼 lijian910wolf 的回复:][quote=引用 2 楼 陈仲甫 的回复:]可以在服务端加一层适配服务,将TCP指令交互转为http的通信,也就是给你的TCP后台加个专用的web前端,如果交互性要求比较灵活这个前端可考虑用websocket。
18,363
社区成员
64,187
社区内容
加载中
试试用AI创作助手写篇文章吧