将wordpress部署为AWS lambda函数?

时间:2016-04-04 01:33:32

标签: wordpress aws-lambda

我想知道在Word API网关上将wordpress部署为一系列lambda函数是否可行。关于可行性/陷阱的任何指示都将不胜感激!

提前致谢,

PKK

2 个答案:

答案 0 :(得分:8)

你有许多事情需要考虑持久性,甚至在此之前,Lambda并不支持PHP。我可能会考虑使用支持PHP并且具有持久存储的Microsoft Azure功能。

虽然其他语言(例如Go,Rust,Swift等)可以被包裹在其他语言中。要相对轻松地在AWS Lambda中运行,编译针对同一平台的PHP并运行它有点不同(当然也更费劲)。考虑一下您对初学者所需的各种PHP模块。而且,我无法想象性能会像Go二进制一样好。

如果您可以使用Phalcon框架做一些聪明的事情并提出一个简单的构建和部署过程,那么maayyyybee。

尽管如此,你可能需要真正彻底改造像WordPress这样根本没有设计的东西。由于项目的年龄,它仍然使用了一些非常古老的约定,虽然这对于典型的PHP服务器来说都很好,但它在这个“便携式”的意义上是一个不同的球类游戏。 PHP安装。

请记住,PHP会话也是依赖的,因此您需要将其移动到其他位置,因为AWS Lambda缺乏持久性。您可以找到一些适用于Redis的WordPress插件?我不得不想象现在已经建立了类似的东西......但是会有很多复杂的问题。

我会认真考虑使用Azure功能从使用Docker开始使用OR并放弃云功能提供的定价模型。你仍然可以在那里找到一些非常便宜且可扩展的主机。

我之前所做的是使用AWS ECS(Docker)和EFS(网络存储)来实现数据库的持久性和RDS。虽然这与Lambda没有相同的定价模式,但它仍然具有成本效益。您可以将ECS服务设置为自动上下调整。这样你就可以在最需要的时候运行最低限度。

我在这里写了一篇更深入的文章:https://serifandsemaphore.io/how-to-host-wordpress-like-a-boss-b5993fcfbd8e#.n6fbnf8ii ...但它基本上只是在Docker中运行WordPress并使用EFS卸载持久存储问题的想法。如果你愿意,你可以交换许多拼图。使用托管在其他Docker服务或Compose中的数据库或任何地方。例如,该部分不必是RDS。即使您的存储可以以不同的方式处理,尽管EFS工作得很好!关于EFS唯一需要注意的主要问题是写入速度。大多数WordPress网站都读得很重。您的里程将根据您的需求而有所不同。

答案 1 :(得分:1)

有可能吗?是的,只要有足够的时间和精力,一切皆有可能。这值得么?最好问自己一个问题。

PHP可以根据位于https://aws.amazon.com/blogs/compute/scripting-languages-for-aws-lambda-running-php-ruby-and-go/上的文档在Lambda上运行。

其他注释中所述的更大的初始问题是持久文件系统。通过Wordpress插件可以再次使用S3进行媒体存储(再次从注释中进行),但是用于请求/脚本执行的任何其他持久性存储是最初的最大障碍。一次解决一个问题,直到最终解决!

相关问题