You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python2迁移至Python3时出现Memcache API代理未找到错误

App Engine Python3 中Memcache代理缺失错误解决

场景信息

app.yaml环境变量配置

env_variables:
  CURRENT_VERSION_TIMESTAMP: "1677721600"
  MEMCACHE_USE_CROSS_COMPATIBLE_PROTOCOL: 'True'
  NDB_USE_CROSS_COMPATIBLE_PICKLE_PROTOCOL: 'True'
  DEFERRED_USE_CROSS_COMPATIBLE_PICKLE_PROTOCOL: 'True'

main.py代码片段

from google.appengine.api import users
from google.appengine.api import wrap_wsgi_app

app.wsgi_app = wrap_wsgi_app(app.wsgi_app)

触发的错误

File "/layers/google.python.pip/pip/lib/python3.12/site-packages/google/appengine/api/apiproxy_stub_map.py", line 69, in CreateRPC
 assert stub, 'No api proxy found for service "%s"' % service
AssertionError: No api proxy found for service "memcache"

解决步骤

  • 本地开发环境:
    确保使用dev_appserver.py启动本地服务,默认模拟器会加载Memcache stub。如果自定义了启动参数,检查是否遗漏了Memcache服务的加载,无需额外配置即可启用。
  • GAE部署环境:
    确认你的GCP项目已启用Cloud Memorystore(Memcache)服务,同时确保应用的服务账号拥有roles/memcache.user或相关访问权限。
  • 依赖与版本检查:
    检查google-cloud-memcache和App Engine相关SDK包的版本,确保与Python 3.12兼容,建议使用官方推荐的版本范围。
  • 调整兼容配置:
    如果你的应用不需要兼容旧版App Engine环境,尝试移除MEMCACHE_USE_CROSS_COMPATIBLE_PROTOCOL环境变量,避免触发旧的代理逻辑导致异常。
  • 验证WSGI包裹顺序:
    确保wrap_wsgi_app是在创建WSGI应用实例之后执行的,顺序颠倒可能导致服务代理未正确初始化。

内容的提问来源于stack exchange,提问作者ffejrekaburb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 13:22:46