5

我一直在将 SilkJS 用于我的一些爱好项目。到目前为止,性能是惊人的,我非常喜欢能够在前端和后端使用 JavaScript。我正在考虑在一些商业项目中使用它,但我想对这样一个决定的可行性进行尽职调查。我有一些问题,想了解一下。

1) 你们知道哪些企业项目(如果有的话)使用 SilkJS?

2) 关于使用 SilkJS 作为 Web 服务器或其他基于 V8 的解决方案的安全性,有哪些可用资源?(漏洞历史、平均修补时间等)。

3) 你们在使用 SilkJS 或其他基于 V8 的解决方案作为 Web 服务器时遇到过哪些陷阱,如果可能的话,你们是如何处理的?

4) SilkJS 是否能很好地处理水平扩展(跨多个服务器分配负载)?你的答案是基于理论计算和现场测试的例子吗?

5) 除了官方网站本身,您还知道哪些关于使用 SilkJS 作为 Web 服务器构建网站的资源?

在回复之前,让我先消除 80% 的回复,我会受到以下限制:

1) 不,我不会使用 NodeJS。出于商业和心理健康的原因,我不会使用异步回调疯狂编程。不要试图说服我我会“习惯并喜欢它”。对于我正在从事的项目类型来说,这并不是最佳选择。是的,你听到了——异步并不适合所有事情。

2)我知道可以在NodeJS中模拟同步编程。不,我也对此不感兴趣。我没有使用 NodeJS - 克服它。

3)我完全意识到大多数应用程序都是 i/o 绑定的,而不是 cpu 绑定的。因此,是的,使用 PHP 通常没问题。但是,对于某些项目,cpu 优化应产生可观的投资回报。不,一家公司不必是 Facebook 就可以做到这一点。这并不是要讨论“为什么 PHP 是好的”。这是对SilkJS对更多商业项目可靠性的探索。

3) 是的,我知道 Java 是什么。不,如果我想减少 CPU 瓶颈,我对为什么这样做会很好并不感兴趣。再一次,这并不是要讨论“为什么其他语言还可以”。它是对更多企业项目的 SilkJS 和基于 V8 的服务器端解决方案的可靠性的探索。

4)是的,有可能对这个问题有一个最佳答案。谁对在企业环境中使用 SilkJS 做出最佳支持或反对,谁就获得了正确的答案投票。

另外,我知道尽管我希望避免使用 NodeJS,但它确实使用了 V8。在这方面,我愿意在通过 NodeJS 使用的上下文中对服务器端的 V8 进行安全审查和稳定性审查。

至于我所说的“企业”,想想每月点击数几十万的电子商务网站和/或稳定性和正常运行时间至关重要且拥有数十万用户的应用程序。

我的目标不是抨击 SilkJS。我非常喜欢它,并会在可能的情况下继续使用它。但是,作为一名专业程序员,我不能只在每个项目中使用我喜欢的东西。所以,让洞察力开始..

4

1 回答 1

1

SilkJS 应该像 Apache+PHP 一样扩展。SilkJS 服务器场前的负载均衡器。像您已经知道的那样扩展 MySQL 后端。

SilkJS 不执行 GZIP 或 SSL。我认为相信一个或两个在野外的实现是有风险的,反对所有各种机器人(黑客或其他)、蜘蛛、浏览器、自定义 perl 程序等。你可以简单地实现 Apache 作为反向SilkJS 前面的代理来提供这些功能。

事实上,您可以对服务器端应用程序进行分片,并使用 apache 作为反向代理,根据请求的 URL 连接到正确的分片。

我想如果你在 SilkJS google 组发布任何安全或其他问题,你会看到及时发布到 github 存储库的补丁。

除了 SilkJS.net 站点,您可能会在 github 上查找各种存储库,其中包含使用 SilkJS 的示例程序。

http://www.sencha.com/blog/discover-music-with-sencha-touch-2

那篇文章讨论了 Modus Create 如何使用 Sencha Touch 作为前端和 SilkJS 作为后端为 NPR 构建应用程序。它说:

“SilkJS 服务器托管在 Amazon 的 EC2 云上,位于负载均衡器后面,以实现速度和冗余。两个 SilkJS 主机都由 NPR API 通过 cURL 提供,并负责从数据包中修剪超过 300KB,从而带来平均负载在被压缩传输之前小于 200KB!”

于 2012-10-19T19:18:23.100 回答