[英]Will it ever be possible for developers to not have to worry about server configuration? Should we have to worry about this? [closed]
我目前正在寻找Ruby on Rails SaaS Web应用程序的托管解决方案,而我看到的最大问题是,如果我使用Amazon EC2之类的东西,那么我仍然需要配置自己的服务器并安装所需的设备(例如数据库,编程框架,应用服务器等)。 这些中的每一个都是出错的机会。 我还必须担心数据的备份方式,备份频率以及其他许多“低级”细节。 作为一家初创公司,我没有系统管理员的资源,所以必须自己玩。 我目前正在为一家初创公司做一些工作,而我的老板一直在谈论EC2的出色表现,因为它使我们“摆脱了硬件业务”-但实际上,它并没有这种感觉,因为我们仍然必须进行设置服务器实例,仍然必须安装软件,仍然必须正确配置软件。 感觉我们仍在从事硬件业务,只是我们并不真正拥有所使用的服务器。
相比之下,像Heroku这样的服务(我相信它实际上在下面使用EC2),但基本上会处理所有底层细节。 他们为我做自动备份,我只指定频率。 他们已经设置了服务器配置。 他们有办法管理它并保持它运行,因此我不必监视流量。 我可以专注于我的应用程序并仅部署代码,让他们担心管理,并确保使用Web服务器正确配置数据库并且正确的文件夹具有权限。
Heroku的问题显然是,如果我想修改这些东西,我将无法控制它们。 Heroku使用nginx作为其Web服务器。 如果我想在Apache上使用Phusion Passenger来保持RoR开发的“前沿”,我就是SOL。 如果我需要在生产中进行快速修补(我知道万恶之源,但有时会发生),那么我就没有对Heroku服务器的SSH访问权限。 如果我需要设置一个新的数据库用户以允许其他人远程访问数据,我认为我不能这样做。 而最糟糕的是,如果事情确实与服务器发生,我没有这样做,除了等待Heroku的解决任何事情的方式。
基本上,在什么时候(如果有的话),我们作为开发人员可以专注于我们的代码和应用程序,而不必在服务器配置上扮演sysadmin吗? 作为一家资源有限且配置服务器的知识有限(足以胜任)的初创企业,我是否会牺牲一些可配置性,以便让其他人担心硬件/软件的问题呢?
将服务器配置作为项目的一部分,并使用脚本来设置和拆除服务器。 将所有内容保留在VCS下,并按常规使用脚本重新创建开发设置。
我对学习如何配置Apache,ModRails,Phusion,Mongrel,Thin,MySQL以及其他内容不感兴趣。 有了Heroku,我不用担心。 nginx是Web服务器,而PostgreSQL是数据库。 他们已经为所有新应用选择了Ruby / Rack。 在Rack上运行的框架包括Rails,Merb和Sinatra。 选择有限。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.