有一个应用程序可以在openstack swift对象存储库中放置,获取和删除对象。我使用JOSS作为java api。使用AccountFactory对象的最佳做法是什么?是否应该在应用程序的生命周期中实例化并保留?实例化它非常昂贵。
感谢。
答案 0 :(得分:1)
在SWIFT中创建帐户时,您正在举行有状态会话。它将记住身份验证令牌,并将每个请求传递给Swift容器。通常,Keystone令牌有效期为24小时,但根据Swift实现,这可能会有所不同。所以这真的取决于项目的生命周期。
因此,如果您将swift用于安全关键组件,那么每次执行操作以保护应用程序免受安全漏洞影响时,我更愿意进行身份验证。如果它不是一个安全关键组件,那么您可以在代码库标记更改的时间段内实例化您的代码。但是每次keystone标记更改时,您都需要重新实例化它。
要了解JOSS身份验证,请参阅此处: http://joss.javaswift.org/authentication.html#architecture