什么是单一的Heroku Web Dyno?

根据 Why do people use Heroku when AWS is present? What’s distinguishing about Heroku,似乎几个Heroku Web Dynos在单个Amazon EC2 cpu上运行.

一个cpu上运行多少个Dynos?什么是规格?

一个cpu上运行的大量Dynos会影响其他Dynos?

部署Heroku应用程序时,您可以使用一个或多个构建包构建虚拟机映像,称为slug.当一个虚拟机实例从这个插件启动时,它被称为一个动力.

每个dyno在应用程序虚拟机内运行一个进程. Heroku没有正式描述如何配置电源,但是轶事分析显示,许多dynos都在单个Amazon XL EC2实例上运行,在所有的动态平台上共享磁盘,cpu和内存.在共享资源时肯定是“嘈杂的邻居”,但是没有提供直接的数据或统计信息.我只能分享我的传闻经验,确实发生了这一点.

每个动力都在EC2主机机器内隔离,但共享底层资源.这类似于docker和其他应用程序容器的工作原理.

Dynos已经向Heroku Routing Mesh注册,这是一个智能负载均衡器,可将传入的Web流量映射到应用程序的dyno.每个dyno都有一个分配给TCP路由网关的TCP端口.

Heroku是亚马逊EC2以上的高级服务.他们以原始的EC2主机为代价实现部署,配置,监控,可用性和自动扩展.您可以运行自己的EC2实例,但需要自己实现这些服务.

免责声明:我不是Heroku的员工,除了作为大型,高流量的Rails应用程序的用户之外,还没有Heroku的专业知识.

更新:Heroku今天上午推出了PX大小的dynos,它们由专用的EC2 c1.xlarge实例承载,它解决了上述所有嘈杂邻居和资源争用的问题.在一个高价格标签.详细信息:https://blog.heroku.com/archives/2014/2/3/heroku-xl

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...