为什么Kafka或者是pulsar等消息队列可以在JVM上有很好的性能,但数据库却不行?_贵州省黔东南苗族侗族自治州岑巩县管售玻璃工艺品有限合伙企业

诚信为本:市场永远在变,诚信永远不变。
全国服务热线:0898-88889999

TELEPHONE

新闻动态NEWS
当前位置: 首页 > 新闻动态

为什么Kafka或者是pulsar等消息队列可以在JVM上有很好的性能,但数据库却不行?

发布时间:2025-06-28 12:05:11 点击量:432 <

额 … 因为最影响吞吐量的 2 个因素:网络 + 存储,已经被 linux 自带的 nio 和 mmap 命令解决掉了,这些消息应用只需要封装上述命令即可。

但 rdbms 数据库的差异性之一就在于如何设计磁盘存储的方式。

这其中就涉及大量"精细化"地对文件系统的操作进行设计,那么自然语言越底层越好。

还有别的重要因素,即消息系统是 type less 的,而数据库系统不是。

jvm 最头疼的问题之一,也是最浪费内存的问题之一是 class 的 overhead …。

为什么Kafka或者是pulsar等消息队列可以在JVM上有很好的性能,但数据库却不行?