我正在制作一个ios应用程序,并使用EC2实例来托管我的后端代码(在Django中)。尽管我只有几个用户(不到10个),但我不知道他们什么时候会每天都在使用这款应用。
我是否需要全天候运行我的EC2实例才能随时接受api调用?对于我需要处理的实际计算时间来说,这不是非常昂贵吗?
谢谢!
发布于 2019-02-15 21:06:51
如果您的后端部署在EC2实例上,而EC2实例没有运行,则您的代码将不会被执行,并且无法处理您的API调用。
你可以用AWS Lambda实现你的后端,它运行无服务器,只按使用量收费。似乎有一个名为Zappa的工具,可以让你在AWS Lambda上部署Python应用程序。
发布于 2019-02-16 01:37:09
你应该使用Hakuna Cloud,它是一种服务,可以在EC2 /S请求到达某个域时启动它,然后在一段时间内没有人调用服务器时自动停止它(默认时间应该是30分钟)。它不要求对您的代码进行任何更改,您只需配置服务并更改您的DNS (它实际上是一个HTTPS安全代理)。一个EC2实例的服务每月只需1美元,一个月免费。
要配置服务,您需要安装CLI:
npm install -g @porketta.io/porcli
然后运行:
porcli provider create
它将询问您可以在IAM AWS控制台中生成的AWS凭证(访问密钥Id和秘密访问密钥)。您可以创建具有特定角色和权限的用户,如here所述。
运行:
porcli vhost create
并按照说明进行操作。它将向您显示所有正在运行的EC2实例,并让您选择要使用Hakuna配置的实例。之后,它将询问您EC2实例链接到哪个FQDN。
结束此部分后,您必须更改您的DNS。如果您将Route 53用于DNS,则可以从AWS控制台执行此操作。您只需更改或创建一个CNAME记录集,如下所示:
service.yourdomain.com CNAME eu1.lb.hakuna.cloud
https://stackoverflow.com/questions/54715957
复制相似问题