[关闭]
@levinzhang 2019-06-09T00:02:55.000000Z 字数 2886 阅读 403

对新应用托管云供应商Render的访谈

by

摘要:

Render是一个新的Web和App托管供应商,按照Render的CEO所述,在全面的云供应商(如AWS)和PaaS供应商(如Heroku)之间,Render做到了“完美的平衡”。


Render是一个新的Web和App托管供应商,按照Render的CEO所述,在全面的云供应商(如AWS)和PaaS供应商(如Heroku)之间,Render做到了“完美的平衡”。

Render仍在致力于构建它的服务套件,但是已经具备了运行基础应用的基本要求。通过dashboard,开发人员可以决定创建哪种类型的服务,也就是公开的还是私有的。这会连接到一个GitHub仓库,每当将代码更新推送到该仓库的时候,都会向服务部署更新。这样的话,没有必要创建单独的构建和部署管道。

目前,它所支持的是脚本语言,如Node和Python。对于想要使用不同技术(如Java或.Net)运行应用的人来说,Render还支持运行Docker容器。创建连接至GitHub仓库的Node.js应用只需要“点击一个按钮”,它能够在30秒以内运行起来。

Render的定价模式是基于服务的运行时长的。价格从静态站点的每月0美元到8Gb RAM四核服务的每月100美元不等。根据带宽的不同,还会有额外的成本。

InfoQ联系到了Render的CEO Anurag Goel,询问了这个新产品相关的问题。

InfoQ:你能对还没有听说过Render的读者介绍一下它都有哪些独特之处吗?

Anurag Goel:在云中托管应用时,传统上开发人员需要在大型云提供商(如AWS)和平台即服务(Platform-as-a-Service,PaaS)解决方案(如Heroku)之间做出选择,前者复杂且需要深入的devops专业技能,后者较为昂贵而且不能随着应用程序复杂性的增加而扩展。Render为开发人员和初创公司提供了两者的完美平衡:瞬间搭建和超强的易用性,再加上以前只有DIY云供应商才能提供的强大功能和灵活性。我们通过一个直观的托管平台来实现这一切,用户不需要任何关于服务器和基础设施的知识,它构建在强大的容器化技术之上,能够达到灵活性、降低成本以及大规模扩展的目的。

对于开发者和初创公司来说,Render是最易于使用的云解决方案,他们可以托管所有的应用和Web站点,不用担心成本、可扩展性和需要devops团队的问题。

InfoQ:你能介绍一下Render都是构建在什么技术栈之上的吗?

Goel: Render的dashboard是基于React和GraphQL构建的,服务器基础设施使用了Go、Docker和Kubernetes。我们使用PostgreSQL和Redis进行存储和缓存,并使用Let's Encrypt进行SSL管理。我们构建的所有内容都是供应商中立的,所以它能够很容易地在公有云和托管的数据中心运行,从而能够让我们的用户从分布式、混合和弹性平台方面获益。

InfoQ:Render的目标是开发人员和初创公司。那么在初创公司不断地成长的情况下,你的愿景是它们是该继续使用Render,还是随着其企业模式的不断成熟,应该迁移至AWS这种类型产品?

Goel: Render所致力解决的是“毕业生”的问题,随着企业的不断增长,它们会从PaaS厂商转移至DIY云供应商(如AWS),这样做的原因有两个:成本和灵活性。

Render同时解决了这两个问题:我们提供了比现有PaaS更有价值的解决方案,尤其是在应用规模扩展方面。举例来说,如果你的应用需要2GB RAM,在 Heroku上你每月需要支付250美元。而使用Render的话,你只需要每月支付15美元,这是数量级级别的成本节省,它已经非常接近DIY云供应商的价格了。

我们通过将Render设计地比传统平台更强大来解决第二个问题(即缺乏灵活性)。举例来说,如果你希望运行一个HTTP服务,这个服务不能通过互联网进行访问,只能由你的Render账户下的其他服务来访问(类似于前端API或代理),在Heroku中这根本无法实现,而如果使用AWS云的话,则会需要很多网络和安全方面的搭建工作。但是,借助Render,瞬间就能搭建完成,因为网络管理和服务发现是内置的功能。

除此之外,Render用户很快就可以访问易用的持久化存储了,在Heroku这种类型的平台上,这是不可能实现的,我们能够让用户运行像Elasticsearch、Kafka和MySQL这样的应用,这个过程就像现在使用Render运行其他服务一样简单。

所有这些都使得Render非常容易上手,同时也使其成为托管任意复杂应用程序的最佳地点,因此Render的用户永远不会超过平台的增长速度。

InfoQ:现在,开发人员监控服务是非常常见的需求,包括CPU/内存使用。Render提供相关的功能了吗?

Goel:现在,Render的用户可以通过dashboard查看到实时的内存和CPU统计数据。我们还计划添加对第三方监控方案的原生支持,如Datadog和New Relic。

InfoQ:服务是如何扩展的,在扩展方面有什么限制吗?

Goel:服务可以垂直扩展,每个服务最多可以使用512 GB内存和64个CPU。

在未来的几周内,我们将会提供水平扩展的功能,这样的话Render用户就可以设置服务运行的实例数量,Render会自动在它们之间进行负载均衡。

今年晚些时候,我们将基于用户配置的CPU和内存阈值实现完全自动化的水平和垂直扩展。

与此相关的是,Render的计费始终是按秒进行的。因此,如果运行一个实例,该实例每个月花费15美元,持续10天的话,只需为此支付5美元即可。

InfoQ:集成第三方工具的难度或可行性如何呢,比如Prometheus或Grafana?

Goel: 我们已经在基础设施中运行了Prometheus,以便向用户公开应用程序的指标数据。今年晚些时候,我们将会提供持久化磁盘功能,这样的话,在Render上运行Prometheus、Grafana和其他第三方工具将变得非常简单。我们还计划发布最常用工具的指南和模板,以便更容易地入门。

InfoQ:你们似乎没有内置的认证机制,该特性在规划中吗?

Goel: 这将取决于用户的反馈。我们正致力于为用户提供最好的托管平台,并选择做一些非常棒的事情,而不是像一些大型云提供商那样,做一些半生不熟的产品。

对于像身份验证这样的事情,我们可能更愿意与像Okta和Auth0这样最好的服务进行集成,而不是重新发明轮子,避免从改进我们的核心平台上占用宝贵的工程资源。

InfoQ:最后一个问题,你们的SLA是多少呢?

Goel:我们在努力实现100%的正常运行,但是不得不承认这不一定总能实现。我们正在努力定义正式的SLA,其中包括如果我们未能达到99.99%的服务水平目标,将对用户进行赔偿。

关于Render的更多信息,可以参见公司的Web站点。

查看英文原文:Q&A on New App Hosting Cloud Provider, Render

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注