基本上是主题所说的。我想知道当客户端通过从同一个 nats 服务器发送/接收的消息进行通信时,通过使用相同的加密/解密机制是否可以获得性能方面的好处。
如果有人感兴趣,我在这里提出了同样的问题:
https://github.com/nats-io/nats-server/discussions/2740
例如,考虑以下两种基于 nats 的通信场景:
- 场景#1:
发布者 (P) 使用加密解密方案 (A) 和他自己的加密密钥 (A) 向 nats 发布主题“foo.bar”
消费者 (C) 订阅了 nats-subject "foo.bar",使用加密解密方案 (B) 和他自己的加密密钥 (B)
在这种情况下,我假设 nats-server 将使用解密方案 (A) 对 (P) 发布的消息进行解密,并在使用加密重新加密这些消息后检查主题并将“foo.bar”消息转发给消费者 (C) -方案(B)。
- 场景#2:
发布者 (P) 使用加密解密方案 (A) 和他自己的加密密钥 (A) 向 nats 发布主题“foo.bar”
消费者 (C) 订阅了 nats-subject "foo.bar",使用与发布者完全相同的加密-解密-方案 (A)
在这种情况下,我假设 nats-server 只需要使用解密方案 (A) 解密 (P) 发布的消息的主题,并在检查主题后将“foo.bar”消息转发给消费者( C)通过“按原样”“复制粘贴”消息的有效负载(数据),因为加密 - 解密机制完全相同。
我猜想加密-解密中的这种对称性应该在负载高时提供更好的性能。
我的这些假设是对的吗?还是我错过了什么?我还没有看到有人指出场景#2 是提高性能和减少延迟(也可能降低错误率)的一种手段。
想法?洞察力?相关文档的链接?