我正在尝试将pubnub集成到我的Loopback 4应用程序中,但是我不确定应该在哪里实例化或使用它?是否应该在存储库,控制器或模型中使用它?如果尝试在存储库类中实例化它,则必须在模型中创建pubnub属性。它可以在类之外实例化还是最终导致错误?
通常,在任何视图,控制器,模型或实用程序类都可以访问的应用程序范围内,PubNub应该作为singleton实例化(在应用程序的生命周期内一次且仅一次)。
或进行设计,使PubNub实例作为自变量从您的应用程序中的每个组件传递/传递到其中。但是,在PoC努力的早期阶段,我并不会考虑太多。
您也可以将PubNub视为数据库连接:
subscribe
或fetchMessages/history
publish
deleteMessages
不要从字面上看这样的类比,但是对于理解PubNub在用例和需求方面适合您的应用程序来说,这是一个很好的方法。
实际上,您应该使用数据库思维方式为您的PubNub帐户配置应用程序和密钥集。读这篇文章:Can my PubNub account support multiple environments?关于开发,测试,生产环境的数据库类比更进一步。
这应该提供您以最佳实践方式设计PubNub应用程序所需的见解。