相关疑难解决方法(0)

如何在本地从GAE和'GCE'访问GCS时将数据存储在GCS中

有一个GAE项目使用GCS来存储/检索文件.这些文件也需要由将在GCE上运行的代码读取(需要C++库,因此不能在GAE上运行).

在生产中,部署在实际的GAE> GCS <GCE上,此设置正常.然而,在本地测试和开发是一个不同的故事,我想弄清楚.

按照建议,我正在运行GAE的dev_appserver和GoogleAppEngineCloudStorageClient来访问(模拟)GCS.文件放在本地blobstore中.非常适合测试GAE.

由于这些不是本地运行VM的GCE SDK,每当我引用本地'GCE'时,它只是我运行linux的本地开发机器.在本地GCE方面,我只是使用默认的boto库(https://developers.google.com/storage/docs/gspythonlibrary)与python 2.x运行时连接C++代码并从GCS检索文件.但是,在开发过程中,这些文件无法从boto访问,因为它们存储在dev_appserver的blobstore中.

有没有办法将本地GAE和GCE正确连接到本地GCS?

现在,我放弃了本地GCS部分并尝试使用真正的GCS.带有boto的GCE部分很简单.GCS部分也能够使用access_token使用真正的GCS,因此它使用真正的GCS而不是本地blobstore:

cloudstorage.common.set_access_token(access_token)
Run Code Online (Sandbox Code Playgroud)

根据文件:

access_token: you can get one by run 'gsutil -d ls' and copy the
  str after 'Bearer'.
Run Code Online (Sandbox Code Playgroud)

该令牌的工作时间有限,因此并不理想.有没有办法设置更永久的access_token?

python google-app-engine boto google-cloud-storage google-compute-engine

18
推荐指数
1
解决办法
2660
查看次数

用于集成测试的AWS S3本地服务器

我有一些使用AWS S3上传和下载文件的代码(使用Java AWS SDK).我希望能够为它编写一些测试,我想知道是否有人有任何好的选择.理想情况下,我想要一个本地运行的轻量级S3服务器,可以快速启动并且不需要系统配置(测试需要由Jenkins运行).

到目前为止我看过的一些选项:

  1. FakeS3 - 几乎就是我正在寻找的东西,但是,在使用Java AWS SDK时,您必须编辑/ etc/hosts文件并重新启动网络,而不是我在Jenkins中可以做的事情.此外,当尝试它时,似乎有一个错误,创建日期字段格式错误,这使我的客户端抛出异常,这并没有激发我对项目的信心.
  2. Ceph - 实现S3 API但需要几分钟才能完成安装

java amazon-s3 amazon-web-services jenkins

18
推荐指数
5
解决办法
2万
查看次数

离线Amazon S3

所以我想尝试使用Heroku作为我的服务器,但Heroku不允许写入其文件系统.相反,我需要使用数据库和Amazon S3之类的东西来存储上传的图像等内容.

问题是我在开发时经常没有互联网访问权限.或者非常差的互联网接入.因此,为Amazon S3开发是不切实际的.是否有可以使用的离线版本,以便我的本地计算机可以充当S3云,而在测试/生产环境中,我可以使用真正的S3?

amazon-s3

9
推荐指数
2
解决办法
4394
查看次数