如果您打算构建高流量,非常安全的网站,您会使用哪种语言?
例如,如果你打算建立一个authorize.net规模的网站,那必须通过API处理大量的信用卡交易,你会从头开始构建它?我想大多数处理具有类似安全性的类似流量的网站都会使用非开源软件(如果我错了,请纠正我)。你会使用什么开源软件?为什么? Python,Ruby,Erlang,PHP,自定义C / C ++,还是什么?此外,您会使用传统数据库,还是NoSQL路线更有意义?
不要试图在这里开始一场火焰战,只是想知道Stack Overflow的好人在这个问题上的想法......
更新: 作为一点澄清,这完全是假设的。我完全理解了解您的语言/平台的重要性,只是寻找对给定语言/框架的优点/缺点的一些看法,以及哪一个(和为什么)可能更适合另一个。就数据而言,我认为客户A从供应商B购买了商品X,Y和Z.所以,非常简单,直到有人想知道客户C是否还购买了商品X和Y或X和Z或Y和Z一起购买。因此,从数据的角度来看,我想我是从商业智能的角度来看待它,并想知道NoSQL是否比传统的SQL数据库有任何优点/缺点。
答案 0 :(得分:4)
我会选择我认识最好的那个。在我个人的情况下,它很可能是某种类型的Java。
答案 1 :(得分:2)
构建高流量网站更多的是设计和架构而不是语言。考虑您团队的经验,您可能需要的第三方库的可用性,并明智地选择。
如果您想进行实验并且不介意使用那些没有时间积累关系数据库的大量经验的技术,您可以使用NoSQL数据库,但除此之外我建议您去现在的传统方式。
答案 2 :(得分:2)
这是一个非常主观的问题,完全取决于你想做什么的具体细节。就极其安全的网站而言,我认为大多数语言是平等的,重要的因素是您实施的安全类型。您是否清理用户输入?你是否保护SQL注入?等
我自己更喜欢使用Python路线,代码非常干净,库非常丰富,可以说它拥有最好的Web框架之一Django。你问我们将用什么语言从头开始构建,但在我看来,只有愚蠢的开发人员不会让他/她的网站以一个可靠的框架开始,无论是Django,Rails,Cake等。
答案 3 :(得分:1)
虽然有些语言试图让您更容易编写安全代码,但我想到了.NET。我同意DroidIn的说法,它不是关于设计和编码器的语言。对于每种语言,我都可以给你一个成功使用它的大型网站的例子。
对于数据库,我会说安全性不是很大,因为它的大小和你要做的事情有多大。如果您需要25个具有TB级存储空间的数据库服务器,那么可以使用像MySQL这样的免费解决方案。但如果没有,那么对于任何磨机数据库应用程序的运行,都无法击败Microsoft SQL Server的功能。
答案 4 :(得分:1)
在知道需要完成哪项工作之前,请不要选择工具。
开源与非开源应该是您最不关心的问题。这与你的目标无关(除非“开源”你的意思是“不必为此付出代价”: - ))。
关系与noSQL是相关的问题,但不知道将存储和处理什么类型的数据,这是一个有争议的问题。
至于语言 - 请确保选择您和您的团队最了解的语言。构建可扩展的安全平台不是学习新工具的时候。 : - )