c# - 对于高可伸缩性和性能需求,在 PHP 应用程序的后端使用 C++ 还是 Java 实现更可取?

标签 c# c++ c jakarta-ee

对于社交门户的高可扩展性和性能需求,是否建议在 PHP 应用程序的后端使用 C++ 或 Java 实现?

相同的好处和权衡是什么?

最佳答案

就原始性能而言,C++ 将比 Java 或 PHP 更进一步,比 C# 稍微更进一步。我的意思是,如果你用这些不同的语言实现相同的算法,你最有可能看到 C++ 的最佳性能(尽管这将完全取决于你在做什么以及你是如何做的 - 一种不同的语言本身不是 Elixir ;您需要学习如何充分利用该语言,这可能需要数年时间)。

正如@spender 所说,使用深思熟虑的算法和架构通常会比简单地切换到不同的语言可能获得更大的性能增益和可扩展性。性能从根本上讲是高效的(最大限度地减少您对带宽、内存、磁盘和 CPU 等资源的使用),而可伸缩性主要是让事情并行运行良好(将争用降到最低)数据、带宽、内存和 CPU 等资源,并最大限度地减少系统不同部分相互通信的需求)

正如@Kugel 所说,如果您拥有一个真正可扩展的架构,那么您在某种程度上可以只投入更多硬件来解决这个问题,这最初可能是一种比用不同语言重写所有内容更便宜的方法。但是,如果您的网站取得成功,让您的代码尽可能高效将减少您的硬件和运行成本。

另一个考虑因素可能与开发/可维护性相关——如果您是 PHP 专家和 C++ 新手,您可能会从 PHP 中榨取比从 C++ 中榨取的更多东西。您必须考虑全局并找出最“商业上可行”的解决方案,而不仅仅是理论上性能最高的解决方案。或者您可能会发现您的“组合在一起并且工作得非常好”的 PHP 解决方案在一周内启动并运行,而您的高度优化的 C++ 从未完全完成。

关于c# - 对于高可伸缩性和性能需求,在 PHP 应用程序的后端使用 C++ 还是 Java 实现更可取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4728704/

相关文章:

c - 这个程序的输出是怎么出来的?

C 编程语法

c - 运行时 c 结构数组的大小

c# - 从客户端调用 MVC Web API Controller 方法

c# - MSBuild 无法构建 MSI。 Windows 服务有替代方案吗?

C++ 2 Dimensional Map 找到给定索引的所有相邻方 block

c++ - 位集和有符号值

c# - Observable.Range 被重复?

c# - 使用 Powershell 自动禁用 Windows 更新

c++ - 将 char[] 转换为 System::Object