在Intranet中打开http连接是否昂贵?

时间:2014-01-24 10:36:10

标签: java sockets http

一台服务器将使用http客户端从另一台运行http服务器的服务器上传一些数据。

我们有两种选择:

  1. 打开持久连接,按住它,然后尝试上传不同的文件(如果需要)
  2. 打开非持久连接,上传文件一次。下次获得新连接。
  3. 如果服务器都在同一个Intranet中,并且网络状况良好。如果选择选项2?

    ,每次创建新连接是否昂贵?

    我忘了说:我们正在使用https个连接

3 个答案:

答案 0 :(得分:1)

在这里进行权衡,如果您认为带宽将是您转移的主要问题,那么选择2是正确的做法。虽然这在服务器处理方面会有点贵,因为每个用户将有多个会话,并且它将随着用户数量的增加而算数增加。服务器作业将很短,并且会很快结束,因此饥饿的时间非常短。由于连接很短,因此可以同时处理的用户数也会增加。但是有一个问题,如果这些文件有序列,则必须在服务器端维护它。 另一方面,如果您使用选项1.服务器端的管理在处理方面变得更加容易。此外,它将消耗更多带宽。由于存在持久连接,因此可以处理上载的用户数量将会少得多。

答案 1 :(得分:0)

这取决于连接的频率。拥有较少拥塞的网络将在两种情况下都能提供流畅的性能,但是考虑到网内空间中的客户端数量较少,使用SSL / TLS会增加一些开销。但是,如果您以频繁的方式进行事务,而不是在这种情况下,我宁愿持久连接减少新的连接开销。

另一方面,如果我们从具有低功能的服务器的大量连接中获取大量事务,那么建立持久连接可能会使网络拥塞并且肯定会对服务器进行测试。所以我们必须考虑各种因素做出选择。

答案 2 :(得分:0)

选项2.延迟是建立TCP连接时要考虑的最重要因素之一。由于您位于专用网络中,因此创建新的非SSL连接的成本微不足道。