【问题标题】:Web Role vs Worker Role in Cloud Services / Node.js云服务 / Node.js 中的 Web 角色与 Worker 角色
【发布时间】:2014-01-09 21:12:26
【问题描述】:

Web Role (Node.js) 和 Worker Role (Node.js) 之间有什么区别?两者都可以在 80 端口上运行。两者的代码相同。我知道 Web Role 在 IIS 上运行,但是如果 Node.js 有自己的 WebServer,为什么我需要 IIS 作为代理?

【问题讨论】:

    标签: node.js azure


    【解决方案1】:

    不同之处在于 Node Web Role 将通过 IIS 运行。但是 Node Web Worker 是 VM,通过 node.exe 运行,它自己作为集群工作者。

    这里的主要区别在于您的虚拟主机和网络平台设置将取决于您选择的选项。如您所知,设置 IIS 与 node.exe 非常不同。
    因此,使用 Web 角色,它将通过 IIS 代理所有流量,而不是直接通过节点主进程。

    缺点/优点:
    Web Worker 的主要优点是它不依赖于任何堆栈,并且您可以完全控制在那里运行的内容以及它如何影响您的应用程序。同样,如果您已经准备好某些东西,则可以毫无问题地重复使用它。
    同时,您需要自己管理堆栈,方法是实现主节点进程,然后自行派生工作人员。

    使用 Web Role 可以更快地启动,如果你对 http 平台的设置没有什么复杂的,这是要走的路,但是 IIS 和 node 之间会有关系,这种关系有依赖关系,可能有点不过,在非常高级的情况下会有所限制。
    而且您可以重用依赖 IIS 的 Windows Azure 云功能。

    普通开发在技术上没有太大区别,除非您需要一些关于您的 Web 应用程序设置的非常具体的内容。

    【讨论】:

    • 能否请您提供两种方法的优缺点(使用 IIS 作为代理或不使用 IIS 作为代理)?我不完全理解只使用 Node.js 是否正确?
    • 我已经更新了上面的答案,在利弊方面添加了更多细节。对于大多数开发人员来说,这仍然没有什么区别。
    • 顺便说一句,发现这个:blogs.msdn.com/b/hanuk/archive/2012/05/05/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-25
    相关资源
    最近更新 更多