我什么时候应该在性能方面创建另一个出版物?
When should I create another publication, performance-wise?
我的第一个模板有一个包含 10 个字段的出版物。
我有另一个模板,我只需要同一出版物的 5 个字段。由于用户可以访问两者,具体取决于加载的模板,因此无需担心安全问题。
问题:
性能方面,我应该只发布我需要的 5 个字段,还是应该依赖我的第一个发布?
我希望它是以下两者之间的权衡:
- 发送的数据量
- 服务器端负载(这些出版物中的每一个都会使用
cursor.observe()
)
- 当前订阅的用户数(mergeBox 负载)
另一个解决方案可能是创建 2 个发布:基本的有 5 个字段,另一个有 5 个其他字段。在我的第一个模板中,我订阅了两个,在第二个中我只订阅了第一个。
我理解这个理论,但我无法从中推断出什么是最好的方法。我希望在这种情况下有好的做法。
所有的也可能是等价的,这会使它成为一个不必要的微优化(这将回答我的问题)。
谢谢!
我认为你的思路肯定是正确的,很难说我应该现在还是以后优化。如果不需要太多时间,我建议这样做。
对于拥有大量用户的情况,您肯定希望您的应用程序尽可能跟踪最少数量的数据库字段。我认为您使用两个订阅的方法很好。我建议的一件事是通过拥有一个包含所有 10 个字段的出版物来减少第一个模板的订阅量,这样它就不必订阅两次。
希望对您有所帮助!
我的第一个模板有一个包含 10 个字段的出版物。
我有另一个模板,我只需要同一出版物的 5 个字段。由于用户可以访问两者,具体取决于加载的模板,因此无需担心安全问题。
问题:
性能方面,我应该只发布我需要的 5 个字段,还是应该依赖我的第一个发布?
我希望它是以下两者之间的权衡:
- 发送的数据量
- 服务器端负载(这些出版物中的每一个都会使用
cursor.observe()
) - 当前订阅的用户数(mergeBox 负载)
另一个解决方案可能是创建 2 个发布:基本的有 5 个字段,另一个有 5 个其他字段。在我的第一个模板中,我订阅了两个,在第二个中我只订阅了第一个。
我理解这个理论,但我无法从中推断出什么是最好的方法。我希望在这种情况下有好的做法。
所有的也可能是等价的,这会使它成为一个不必要的微优化(这将回答我的问题)。
谢谢!
我认为你的思路肯定是正确的,很难说我应该现在还是以后优化。如果不需要太多时间,我建议这样做。
对于拥有大量用户的情况,您肯定希望您的应用程序尽可能跟踪最少数量的数据库字段。我认为您使用两个订阅的方法很好。我建议的一件事是通过拥有一个包含所有 10 个字段的出版物来减少第一个模板的订阅量,这样它就不必订阅两次。
希望对您有所帮助!