首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >客户端服务器连接

客户端服务器连接
EN

Stack Overflow用户
提问于 2018-05-26 06:31:12
回答 1查看 28关注 0票数 0

我将要写一个应用程序,它应该可以连接大约30到60台物联网计算机,每个计算机都会发送小数据包(每个计算机都会在3秒的间隔内连续发送数据,但它们都是在稍微随机的时刻发送数据)。客户端将只推送我需要收集的数据。他们不会从中央桌面请求数据。

我想知道,对于这个监控桌面应用程序(而不是web应用程序),什么设计会更好。

让IOT60计算机将其数据报告给套接字构造,然后在应用程序中序列化它(尽管网络数据已经序列化),并将其放入数据库(SQLite或MySQL)。

让所有30到60个客户端自己直接连接到数据库,并找到一种方法来创建数据的实时视图。

EN

回答 1

Stack Overflow用户

发布于 2018-05-26 07:01:06

这可能是有争议的,但我建议使用

第一个选项,使用中间服务器,

出于几个原因:

  1. 您可以使用UDP (无状态即发即忘)从客户端收集数据,以获得更好的性能和可伸缩性。不管是让客户端每隔3秒重新连接到数据库,还是保持连接打开,效率都不会很高。
  2. 中间服务器基本上就是一个中间件。这意味着,如果数据格式(客户端)或数据库结构发生更改,您只需更新中间服务器,而不是所有客户端。
  3. 如果需要,您可以通过添加更多中间服务器来向上扩展并添加冗余(使用缓存)。如果您对数据库执行此操作,则必须以某种方式使它们保持同步。
  4. 在安全性方面,最好将数据库放在应用程序服务器(3层体系结构)的后面,并配置防火墙,以便只有应用程序服务器可以连接到它。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50537605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档