如何处理数百或数千个虚拟主机

如何处理数百或数千个虚拟主机

我很好奇,像 heroku 这样的服务是如何管理数千个虚拟主机的 - 也就是说,如果你创建一个网站/应用程序,并将其放在这些服务上,你就会得到自己的虚拟主机名 - foo.heroku.com 等(这同样适用于许多其他具有虚荣网址的网站)。

我知道,使用各种 Web 服务器和代理,您可以根据需要配置任意数量的虚拟主机 - 但这肯定有一个上限?他们是否以编程方式添加虚拟主机 - 也许分散了负载?或者还有其他解决方案。

答案1

我对此不是 100% 确定,但他们可能使用类似

它是一个负载平衡非缓存反向代理。

答案2

Heroku 有一个非常出色的系统,其网站上有这样的描述:http://heroku.com/how/architecture

重要的是他们的路由网格这是他们定制的拼图,用于将请求重定向到适当的“dyno”。由于 dyno 可以随时启动和关闭,因此路由网格知道如何找出 dyno 的位置并将流量路由到它。听起来,它基本上就像一个用 erlang 编写的超级动态、数据库驱动版本的 haproxy。不过,这可能过于简单了。

相关内容