有没有办法在本地运行我的nodejs应用程序,以便我可以模拟在生产App Engine中运行的应用程序而无需部署它?出于某种原因,我的应用程序在Google App Engine中的行为与我的localhost相比有所不
每次我进行更改时,我都厌倦了将应用程序部署到Google App Engine,以查看是否存在错误.
您永远不会在本地系统和真正的GAE基础架构上获得完全相同的行为.一次只是因为您运行的基础架构不同:操作系统,硬件和网络性能/功能,实际与SDK模拟的谷歌API和服务可能正在使用的服务,时间等的性能/功能.一些例子(它们来自标准环境GAE,它是真的,但它基本上是相同的想法):
> FetchOptions withLimit() does not reduce query execution time (Google App Engine)
> Datastore fetch VS fetch(keys_only=True) then get_multi
> Why does Google Cloud SQL (using JDBC) take longer to insert records from Google App Engine than from my personal computer?
> Ndb strong consistency and frequent writes
你应该调查这些差异 – 非常欢迎你在这里提出关于他们每个人的问题.
一般来说,你会发现差异分为两类:
>明显的性能差异,预期,但他们可能会发现您的代码中的实际问题:竞争条件,错误的时间假设等
>功能差异 – 查找要在GAE上而不是在本地执行测试的一般区域.
例如,我了解(困难的方式)SDK数据存储模拟器不会模拟来自真实数据存储区的争用逻辑 – 而本地我的应用程序运行良好,在GAE上由于争用而惨遭爬行,我不得不重写解决它的很好的逻辑部分.见Contention problems in Google App Engine