设置服务器时需要考虑许多因素;性能、可靠性、可扩展性和控制是最广为人知的因素。根据您的操作和您对服务器的需求,您可以通过多种方式设置您的服务器。每种设置都有自己的优点和缺点,并且会专门针对特定用户。因此,根据您的需要,您可以以不同的方式设置您的服务器。鉴于用户在设置计算环境时遇到的问题,我们想到写一篇博客来解释各种组合。
所以继续阅读……
1.一台服务器完成所有任务
在这种安排中,您将拥有一台服务器,它将处理有效运行应用程序所需的一切。这意味着,您的数据库和应用程序将共享同一台机器的资源。
在哪里使用?
此类服务器最适合在您的服务器上快速设置应用程序。也就是说,web服务器、应用服务器和数据库服务器在一台机器上。这种设置的唯一缺点是它提供的可扩展性很小,而且组件隔离几乎不存在。
好处 -
它是最简单的系统之一
缺点:应用程序和数据库在争用同一台服务器的资源时会产生冲突。这反过来会产生较差的性能和较高的应用程序延迟。该系统不容易扩展。
2.独立的数据库和应用服务器
数据库和应用程序都可以有一个单独的服务器,因此不存在资源冲突,因为两者在技术上在不同的机器上是分开的。单独的数据库服务器的安全性也得到了增强,因为您可以在每个地方部署多个安全点。
用例:它非常适合在不影响质量的情况下快速设置应用程序,因为应用程序和数据库永远不会争夺同一资源。
优点:
- 应用程序和数据库位于两个不同的服务器上,因此不要争用资源,即它们有单独的资源可供使用。
- 您可以单独扩展每个层。意味着,可以通过添加更多资源来扩展数据库服务器,而无需对应用程序服务器进行更改。
- 由于数据库和应用程序位于不同的空间,因此安全性要好得多,因为任何黑客尝试都需要两倍的努力才能闯入系统。
缺点:
- 维护这样的设置比维护单个服务器要复杂得多。
- 如果数据库和应用程序服务器之间的网络连接遇到高延迟率,就会出现问题。常见的原因包括,数据库和应用服务器之间的距离太大,带宽低。
3.负载均衡器(反向代理)
顾名思义,负载平衡器通过将工作负载均匀分布在多台服务器上来平衡服务器之间的工作负载,以提高可靠性。即使连接到负载均衡器的其中一台服务器发生故障,其他服务器也可以有效地处理传入的数据,直到故障排除或更换默认服务器为止。负载平衡器以通过同一域和端口处理多个应用程序而闻名。
最适用于:
需要通过添加越来越多的服务器来频繁扩展资源的环境。对于具有因客户需求而变化的不同需求的组织来说就是这种情况。如果您拥有这样的企业之一,您一定会从负载均衡器设置中受益。
优点:
- 水平缩放是可能的。系统可以添加任意数量的服务器。
- DDOS 攻击不太可能发生,因为客户端连接的数量可以限制在一个合理的数量。
缺点:
- 如果配置不当,负载均衡器不会提高性能,但很容易成为瓶颈。
- 此类系统的配置最繁琐,因为它们有些复杂。
- 整个系统依赖于负载均衡器。这也是单点故障。如果平衡器出现故障,您的服务器将完全中断。建议部署多个平衡器以增加冗余。
4.HTTP 加速器(带缓存的反向代理)
HTTP 加速器也称为缓存 HTTP 反向代理,旨在通过一系列技术减少用户访问服务器文件和其他内容所花费的时间。使用加速器部署的主要技术是在内存中缓存来自 Web 或应用程序服务器的响应。如果您是新手,缓存会在附近的服务器中创建文件的副本,以便在需要时可以更快地加载文件。
最好用在——具有大量动态 Web 应用程序的环境,这些应用程序有几个经常使用的常用文件,最好缓存起来。
优点:
- 通过缓存内容并压缩资源来减少 CPU 的负载量,从而提高站点性能。
- 它也可以用作反向负载平衡器代理
- 一些缓存 Web 应用程序可以帮助保护您的系统免受可能的DDOS 攻击。
缺点:
- 需要大量微调以获得最佳性能
- 缓存率应该足以维持服务器的理想性能水平
- 如果缓存命中率低,则性能可能会降低。
5.主副本数据库复制
改进数据库系统最深刻的方法之一是实现主副本数据库复制。复制要求一个主节点与一个或多个副本节点一起使用。
最好用在——
读/写性能根据需要而变化的数据库和 Web 应用程序。
用例:
需要提高数据库层读取性能的地方。
优点:
通过在服务器之间传播副本来显着提高数据库服务器的读取性能。可以通过使用可用的独有更新来提高写入性能。
缺点:
访问数据库的应用程序必须有系统来识别哪些数据库节点应该发送更新和读/写请求。如果主系统出现故障,则在更正问题之前无法执行更新。主节点的故障会严重影响所有后续节点的故障。
结论
现在您已经了解了很多关于服务器设置的知识,您一定对您将用于自己的应用程序的设置类型有一个相当不错的想法。请记住,您测试的越多,您就越能够在没有太多复杂性的情况下运行您的计算环境。