我应该建立一个TCP服务器还是在后端使用简单的http消息?

问题描述 投票:0回答:1

我正在构建一个后端,它将处理来自Web应用程序和移动设备应用程序的请求。

我试图确定TCP服务器是否适合此vs.常规的HTTP GET和POST请求。

用例1:1.移动设备上的客户端在设备上执行单词“ red”的搜索。

  1. Word发送到服务器(不清楚JSON或TCP是否正确)

  2. 红色一词进入服务器,服务器从mysql数据库中提取所有带有红色作为颜色的行(这可能是约5000个结果)。 备用步骤2(也许TCP在这里应该更有意义):构建了一个哈希表,其中用单词red作为键,并使用一个值指向所有带有单词red的对象的数组的指针(我认为这样看起来会更快)时间)。

  3. 数据发送到手机(JSON或其他方式,不确定)。 我不清楚这一步。

  4. 电话解析,等等。

在用户完成查询之前,我可能要保持阵列在服务器上的活动状态(因为他们可以继续过滤结果)。

根据这个例子,我应该看什么架构?

高度赞赏任何其他方式。

谢谢

python http ftp
1个回答
1
投票

在您的情况下,我将使用HTTP,因为:

  1. 您的服务是无状态的。
  2. 如果使用TCP,则在扩展服务方面会遇到问题(因为每个请求都将定向到建立TCP连接的服务器),这与您的服务无状态有关。 在HTTP中,您只需在负载balane后面添加更多服务器
  3. 对于TCP,您需要声明一些由于防火墙等原因可能被阻止的端口-您可以使用端口80/8080,但我认为这不是一个好习惯
  4. 如果您的服务更像是建议更改其用法,那么您可能想要使用TCP / HTTP套接字
  5. TCP用于更长期的连接-例如每隔X秒报告一次系统状态的安全系统-情况并非如此
© www.soinside.com 2019 - 2024. All rights reserved.