我可以在自己的服务器上运行Google App Engine开发服务器吗?开发服务器数据存储能够处理多大的负载量,以及什么样的数据量会使其瘫痪?
我可以在自己的服务器上运行Google App Engine开发服务器吗?开发服务器数据存储能够处理多大的负载量,以及什么样的数据量会使其瘫痪?
以下是不使用App Engine运行App Engine应用程序的一些选项:
我都没有试过。有关两者的更多讨论,请参见此问题。
如果您只是在公共IP上启动dev_appserver.py,数据存储会表现得如何?如果您有很多数据,那么效果不好。当使用开发服务器时,整个数据存储都保存在内存中,因此随着插入数据,Python的内存使用量将增加。一旦添加了足够的数据导致您的系统开始交换,您的应用程序将变得无法使用。开发服务器中有一个选项,可以使用SQLite数据存储后备而不是内存存根。这使性能在大量数据的情况下变得可接受,但与生产数据存储相比,效率要低得多,因此即使在少量数据的情况下,数据存储器访问速度也相对较慢,肯定比少量数据的内存存储器要慢得多。
将开发服务器作为独立的生产服务器运行通常不是一个好主意。提供给开发服务器的API存根是设计供开发人员使用的,而不是用户。例如,发送邮件只会写入日志条目,而不是实际发送邮件;登录管理员需要单击一个名为“以管理员身份登录”的复选框。
如果您想将现有应用程序从App Engine移出,请使用上述选项之一。如果您正在从头开始开发应用程序,请使用Django或其他专为在通用硬件上运行而设计的框架。开发服务器仅用于开发。