在python 2.5中使用memcache - > 2.7迁移

时间:2013-08-09 22:01:08

标签: google-app-engine

我正在将GAE应用程序从python 2.5迁移到2.7。迁移文档说:

  

警告:如果您的应用使用内存缓存,请注意,如果从Python 2.5运行时的应用程序中获取,Python 2.7应用程序缓存的数据存储实体将引发错误。强烈建议您不要在同一个应用程序ID上同时使用这两个Python运行时,即使是不同的应用程序版本。如果必须使用两个运行时,请注意不要将数据存储区实体存储在memcache中。如果您必须并且正在使用NDB,请暂时禁用自动缓存,方法是将_use_memcache = False添加到模型中,直到您的应用完全迁移到2.7。

如果我使用2.5部署版本,使用2.7部署另一个版本,并且他们都使用内存缓存,并且我确保它们使用的内存缓存密钥是互斥的,我可以避免这个问题吗?

我意识到最安全的做法是在我的2.7版本中禁用memcache,直到我可以退出我的2.5版本,但这会使测试2.7版本更加困难,所以我更喜欢使用memcache这两个版本,如果可能的话。

1 个答案:

答案 0 :(得分:1)

我相信如果你绝对肯定你已经将两个不同版本使用的密钥隔离开来,你就可以了。

为了安全起见,我建议使用traffic splitting向Python 2.7版本发送少量流量,这样如果出现问题,则会显示一小部分流量。您可以逐步增加百分比,同时观察错误,直到从新版本提供所有流量。