应用服务器托管

war*_*lyn 1 hosting qt server

我正在编写一个 Qt/C++ 应用程序,我计划添加一个带有套接字连接的网络部分到一个在 Qt 中实现的服务器。

如果我在本地托管服务器,则没有真正的问题。

但是,如果我想与某些人共享我的应用程序(客户端部分),然后确保我的服务器始终在运行,最好的方法是拥有一台远程服务器。

你能给我一些线索吗?我还不清楚在这种情况下要遵循的步骤。

  • 这是更好的方法吗?
  • 我可以找到免费托管吗?

非常感谢!:-)

Tat*_*ved 5

一般有3种选择:

1. 本地托管

这是在您的物理位置运行的服务器。您可以根据需要清楚地设置它,服务器会做您想做的任何事情。但必须全程开启,没有其他工作时只会耗电。此外,您必须获得所有硬件(服务器组件)、运行软件(操作系统)、网络设备和连接(某些路由器,需要进行特殊设置 [NAT、端口转发...]、速度和互联网连接的可达性),很可能还有一些安全设备/软件(防火墙左右)。

这是基本开发和测试的最佳想法。但是,一旦该服务应该为公众服务,那么自己运行服务器就不值得了。


2. 远程托管(虚拟化或专用服务器)

此选项在去年20 - 30年的顶部,所有的Web developers和App developers是把他们的软件的一些准备的服务器上。专用是在某些提供商的位置运行的物理服务器,他们向您提供硬件(可能还有一些操作系统/其他软件的许可证)。虚拟机只是 1 个硬件(服务器),上面有多个虚拟服务器(在同一硬件上运行更多客户端)。

由于网络/安全/硬件问题由hosting owner. 您只是借用了一些磁盘空间和计算机时间/性能。通常公司会提供整个服务器,您可以在其上设置多个服务、运行多个协议等。

网络和服务器应用程序的单个/少数(不多)实例的理想解决方案。


3. 云托管

这是目前最新的技术(存活大约 10-15 年[例如,AWS 自 2006 年开始运行,Azure 自 2010 年起开始运行])。数据中心所有者(从第 2 点开始)变得更好并在服务器上创建了一些应用程序,这些应用程序将为您完成所有工作(大部分是自动的)。只需点击几下,服务器就可以运行,可以部署应用程序,使用数据库引擎、网页、物联网集线器……相当多的东西。好处很明显,您只需花费最少的时间来设置东西,它们就会运行。正常运行时间长(例如:99.9995%)。

专用和云之间的区别:在专用服务器上几乎可以放置任何适合需求的操作系统,只运行您想要的服务,拥有完全控制权。在云解决方案中,您没有太多的“物理”控制权,而且数据更多地存在于世界各地的数据中心的某个地方。但通常它是更具可扩展性的解决方案,一旦您的应用程序将被公共部门的大量用户使用,这是最好的方法。


共同的意识形态:

最常见的解决方案是,当您开发时,您创建本地服务器,您可以在该服务器上进行部署、测试和改进。稳定后,在云端或专用/虚拟机上订购服务器并将其部署在那里。一些开发人员从一开始就知道他们的应用程序将在云服务上运行,因此他们订购并开始针对它进行开发,但在大多数情况下没有必要这样做。