我有一个绑定到 Bluemix 应用程序的 Watson Visual Recognition 服务。我正在使用带有冒烟测试的蓝绿色部署来管理应用程序部署。
我在冒烟测试中包括的一项检查是依赖于 Visual Recognition 服务的功能。因为冒烟测试在部署后立即运行,并且因为看起来 Visual Recognition 服务 API 密钥在重新绑定时重新生成 - 然后需要一段时间才能生效 - 冒烟测试失败。等待变为有效的过程已记录在案,但这令人头疼。我尝试了两种解决方法:
- 在我的代码中添加一个重试循环以等待 Visual Recognition 服务密钥有效。然后我的烟雾测试可以调用它,确保在获得有效密钥之前没有任何东西被推送。我可以看到密钥对免费通话相对较快(大约 30 秒内)生效,但随后需要几分钟才能附加到付费通话的权利。等待密钥对付费呼叫有效会增加我的部署大约五分钟,这并不理想,因为我们的团队每天推送很多次,并且部署可以开始备份。
- 创建永久凭据并使用用户提供的服务将它们绑定到我的应用程序。这意味着部署可以立即开始使用该密钥,这很好,但我绕过了正常的服务绑定机制,这似乎是错误的。
有没有我错过的选择?