61

第一件事:我搜索了所有已知的网络托管公司以寻找 nodejs 的共享托管,但我没有找到任何人。然后我才知道 nodejs 不能在共享主机系统上运行。我想知道为什么?

第二件事:我是一个正常预算的正常人。选择 vps 或专用服务器或云托管可以使节点运行,但与 PHP 共享托管服务相比,它超出了我的零用钱范围,所以我应该学习 node.js 吗?

4

6 回答 6

29

理论上它可以,但实际上它取决于托管服务提供商是否有这样的基础设施。

与经典网络平台相比,Node 是一个自我可持续的平台。如果使用 PHP(例如),它可以在 apache 或 nginx(或任何其他)上运行,而 PHP 它本身只是带有一些库的脚本语言,这些库在逻辑实现方面没有太多作用,并且需要 Web 服务器解决方案。Web 服务器创建套接字来侦听特定端口的流量,会发挥自己的魔力并执行 PHP 来处理请求。

同时 node.js 创建自己的套接字,并将其绑定到自己的端口。这给了它更多的低级访问权限,所以它本身就是 Web 服务器。您不能将两个应用程序绑定到一个端口,因此它已经无法共享。
有一些服务(Web 服务器)允许您创建代理以将流量路由到您的 node.js 进程,但在某些情况下效率不高,并且共享主机不提供此类功能。

由于 node.js 还很年轻,而且非常不同,它仍然没有影响到大多数共享托管服务。有一些可用的在线服务以“共享”方式托管您的 node.js 应用程序。

此外,您可以在 AWS 上免费租用 EC2 Micro 实例(免费套餐)一年,这为您提供了充足的可能性和时间来尝试和测试不同的东西。您将获得半专用系统,在那里您几乎可以做任何事情(安装软件、修改操作系统配置等等),而共享主机不允许您这样做。

于 2013-07-08T15:06:22.067 回答
12

还有其他方法可以部署 node.js 应用程序。

您可以使用 PaaS 服务,例如OpenshiftHerokuAppFogPaastordotCloud等。

于 2013-07-08T14:51:35.743 回答
12

看看 Heroku。对于简单的低流量应用程序,它们是免费的,并且可以轻松扩展以获得更多流量(需要额外付费)。此外,您使用 Git 进行部署,因此更新内容非常简单......

于 2013-07-08T15:32:06.787 回答
5

Other great node app hosting options include Joyent's SmartOS and Microsoft Azure. Both have a free trial period.

Azure can be a great learning platform for node.js as you can host your node app in Windows Server, Ubuntu Linux, or Azure's special "web site" shared deployment scheme.

http://www.windowsazure.com/en-us/develop/nodejs/tutorials/create-a-website-(mac)/

Another cost efective solution for node app hosting is Azure's "Web Site" approach - about $10 per month. The down side is that you have to use their shared environment that hosts your node app via IIS. In practice, this worked for well for me, but you are limited in that you can't use certain Linux functions from Node when it's running on Windows, and you won't learn how to configure the node service yourself, which may or may not be important to you. (Note: Azure's GIT deployment process works great if you want to deploy your app from a local GIT repository. Also note that NodeIIS will stop your node app when it's not in use for a certain period of time - and it auto-starts again when a request for your app comes in.)

Joyent's SmartOS platform is a Linux OS optimized for hosting your node.js app. They have impressive reliability and performance as well as great diagnostic tools.

http://wiki.joyent.com/wiki/display/jpc2/Developing+a+Node.js+Application

The most cost effective solution I have found so far is DigitalOcean, a great new hosting solution where you can host a full Linux VM for only $5/month! I have had great luck hosting Node apps there so far: https://www.digitalocean.com/pricing

于 2013-07-10T12:37:07.813 回答
5

a2hosting 允许 Node.js 共享托管。但没有经验。从网络搜索中找到

更新:使用 DigitalOcean。私人 VPS

于 2014-05-04T03:34:52.957 回答
4

Node 不像大多数服务器那样工作。使用 IIS 和 Apache,有一台服务器运行多个站点,这有助于共享环境。使用 Node,您正在运行自己的服务器,因此您倾向于在机器上共享资源。

我不能告诉你是否值得学习节点,因为我不知道你的动机,但如果你选择去那里,它可以扩展你的职业机会,并扩展你的技能。

以下是一些低价位的托管选项。

http://nodester.com/

https://www.nodejitsu.com/

于 2013-07-08T14:58:07.053 回答