【问题标题】:Python/Django or C#/ASP.NET for web development?用于 Web 开发的 Python/Django 或 C#/ASP.NET?
【发布时间】:2023-04-08 07:42:01
【问题描述】:

我是一名 .NET 开发人员。我没有使用 Python 的经验。哪个平台更具可扩展性?哪个平台更适合大型高流量网站?如果您对这些平台的可扩展性有任何经验,请告知我们。

谢谢。

【问题讨论】:

    标签: asp.net python django scalability


    【解决方案1】:

    尽管我非常喜欢 Python(而且,这很多!-),如果您精通 C#,并且正如您所说,“没有 Python 经验”,您的代码将如果您坚持您最了解的内容,则更具可扩展性和适用性(至少在接下来的几个月内)。对于一个在这两个平台上都非常熟练的假设开发人员,可扩展性本质上是一种洗涤,而 Python 将提高该开发人员的生产力;但是要真正精通任何技术都需要几个月的练习,它不会神奇地“发生”。

    因此,除非您试图扩大技能范围和工作机会,或提高工作效率,而是特别严格地关注您现在正在编码的网络应用程序的可扩展性,否则我在良心,建议你坚持C#。您还应该尝试使用 IronPython(并从 Mannings 获得很棒的“IronPython in Action”一书——偏见警告,我是作者的朋友,并且是该书的技术审稿人;-) 用于各种非生产支持代码,来体验一下它以及它可以为您带来的令人难以置信的生产力提升...但是,为了为您的客户或雇主提供最佳价值,请坚持使用您真正掌握的 C#,以实现任何可扩展性- 你交付给他们的关键工作!

    【讨论】:

      【解决方案2】:

      几乎所有知名的框架和语言都可以扩展。

      使用哪一个并不重要。它是关于你如何构建最重要的代码。

      就个人而言,了解一种以上的语言总是好的。

      但是,您可以创建完全可扩展的 Python、PHP、.NET 应用程序。代码的质量首先是可扩展性而不是语言。

      【讨论】:

      • 如此真实,说得很好!如果你是一个完美的编程人员......那么由于可扩展性我会使用.net,但如果你想要可靠性我会使用 PHP,现在。
      【解决方案3】:

      德里克的答案很好,所以我不会重复。

      不过,我想说一点。虽然在大多数情况下,如今语言选择并不是什么大问题,但如果您真的需要高性能和可扩展性,python 的动态特性可能会再次困扰您。对于动态语言可以提供的所有好处,这些好处确实是以额外开销为代价的。 .NET 平台提供完全编译的语言,并提供多种方式来调整编译代码的性能(包括 ngen 支持,因此您可以创建不需要 JIT 的本机编译模块。)

      我不知道 .NET 编译语言相比 Python 的性能优势是否真的足以满足您的特定应用程序,但鉴于您已经是 .NET 开发人员,使用 ASP.NET 可能是最佳选择。

      【讨论】:

      • 是的,我一直想知道这个事实(解释型语言与编译型语言)为什么像 google 和 facebook 这样的巨头使用解释型语言来管理?即使是最轻微的优势也会产生很大的差异,即使对于 gmail 和你的管(哪个是 python 对?)我听说解释语言的运行速度比编译语言慢 10 倍??
      • “前卫”公司不想成为 MS 的奴隶,也不想成为与他们相关的成本。如果您在几乎所有编写良好的实现中投入足够的硬件,您将完全可以生存。这就是为什么像 Facebook 这样的公司可以使用像 PHP 这样慢的东西,但这也没有阻止他们尝试解决 hiphop 的性能问题。问题是,普通的乔不能把那种硬件或资源投入到问题上。 C++、C# 和 Java 是性能领域的王者,而 C#.NET 是快速开发大型项目的可靠解决方案。
      【解决方案4】:

      在 Python 上使用 .NET 会增加可扩展性成本,即 Windows Server 许可证的成本(至少,您通常也会在其中添加 SQL Server)。

      【讨论】:

      • ASP.NET 应用程序也可以使用 Mono 部署在 Linux 上。 (我有在 Apache 和 nginx 服务器上部署 ASP.NET 应用程序的实际经验。)货币成本并不是真正的问题,因为您根本不需要 Windows 许可证,除非您使用 Mono 中未实现的 .NET 功能.
      • 在某些环境中,由于团队规模、资源等因素,“可扩展性成本”实际上没有实际意义。因此,当您谈论“服务器许可证”时,单个 Windows IIS 服务器可以服务许多网站。在大多数情况下,这个答案是不合理的。
      猜你喜欢
      • 2011-09-13
      • 2012-09-10
      • 1970-01-01
      • 1970-01-01
      • 2013-07-23
      • 2015-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多