为啥要把web服务器和数据库服务器运行在不同机器上

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥要把web服务器和数据库服务器运行在不同机器上相关的知识,希望对你有一定的参考价值。

参考技术A

    分开部署方便各自独立扩容独立做负载和主从

    分开部署避免了一起宕机,不方便补救,分开部署的话,谁挂了处理谁,不存在一个挂了拖垮另一个的情况

参考技术B 没有什么强制的说法要求站库分离。不过站库分离上,有利于提高服务器安全性,另外数据库用的是内网网络;这样的操作速度也快;很多大型的企业都采用站库分离的模式。

具有不同.net版本的多个应用程序可以在同一台服务器机器上运行吗

【中文标题】具有不同.net版本的多个应用程序可以在同一台服务器机器上运行吗【英文标题】:Can Multiple Applications with different .net versions can run in same Server Machine 【发布时间】:2022-01-13 12:03:19 【问题描述】:

考虑 .net 版本为 4、4.5 和 4.6.1 的 3 应用程序 它们都可以托管在同一台机器上吗,如果它们托管在同一台服务器机器上,它们是在最新的 .net 版本还是它们的目标版本上运行。什么是 CLR 版本,我们需要考虑 CLR 版本还是框架版本。

【问题讨论】:

是的,您可以在单个服务器上运行多个 .NET 版本,您只需为每个所需安装运行时。 @Austin - 除了 4.6.1 是 4.5 的就地升级,与 4.0 相同 @Damien_The_Unbeliever 都作为 4.0 运行时出现,因此它们都针对“相同”版本。 对,所以只有一个运行时,用于 4.6.1。不是“运行时”。 @Damien_The_Unbeliever 我的回答很笼统,因为.NET 2 和 4 可以同时存在。当然,他的具体示例将使用相同的示例。 【参考方案1】:

虽然Multiple versions of .NET on the same server 回答了在单台计算机上运行不同 .NET 版本的许多常规部分,但您的问题与 .NET Framework 4.x 就地升级更相关,因此它本身就是一种。

您应该知道,您在“3 个 .net 版本为 4、4.5 和 4.6.1 的应用程序”中提到的三个 Web 应用程序在编译时绑定到每个 .NET Framework 版本。当此类应用程序部署到 Windows 计算机时,它们由单个运行时托管,即安装在该计算机上的实际 .NET Framework(可能是现代计算机上的 .NET Framework 4.7.x 或 4.8)。由于它是一个单一的 .NET Framework,因此您也只能看到一个 CLR 版本。

总体而言,在您的情况下,您不必太担心,只需在 IIS 应用程序池设置中选择正确的运行时即可。当您的 Web 应用程序使用较旧的 .NET Framework 版本或 .NET Core 时,您只需担心并了解更多信息。

.NET Framework 确实有生命周期并且可以退役,您可以从 Microsoft 的专门文章中了解这一点。今年早些时候,当政策经历了一些巨大的变化时,我写了一个总结,https://blog.lextudio.com/dotnet-framework-lifecycle-changes/ 在您的主机上,您必须升级到受支持的版本,否则事情将会中断。

【讨论】:

以上是关于为啥要把web服务器和数据库服务器运行在不同机器上的主要内容,如果未能解决你的问题,请参考以下文章

为什么要把JavaScript 放到服务器端上运行?

同一个sql语句在不同的机器上执行时间相差很大,为啥

如何在不同的机器上设置芹菜工人?

为啥asp.net 网页在局域网里不能互访

Client-Server 在不同的机器和多个客户端上运行

为啥相同的查询在从 MySQL 服务器上的解释和执行如此不同?