为什么Cassandra是用Java写的?[已关闭]

2022-09-01 02:44:05

关于Cassandra

的问题 为什么地球上有人会用Java编写数据库引擎?
我可以理解为什么你会想要一个Java接口,但是引擎...

我的印象是,没有什么比C / C++更快,数据库引擎不应该比最大速度慢,当然也不应该使用垃圾回收......

谁能解释一下,为什么Cassandra可以比在C / C++代码上运行的普通SQL更快?

编辑:
对不起“为什么是人间地狱”部分,但它对我来说真的没有任何意义。
我忽略了数据库,与普通的花园变体用户程序不同,它只需要启动一次,然后运行很长时间,并且可能也是服务器上唯一的程序,这不言而喻地产生了重要的性能差异。

我更多地比较/引用我在撰写本文时使用的“功能失调”(温和地说)Java税务程序(或者更确切地说是希望使用)。

事实上,与将Java用于税务程序不同,使用Java编写专用服务器程序是完全有意义的。


答案 1

C++,你什么意思?如果你有几十年的空闲时间,手工编码的组装会更快。


答案 2

我可以看到几个原因:

  • 安全性:用Java编写安全软件比用C++编写安全软件更容易(还记得缓冲区溢出吗?
  • 性能:并没有那么糟糕。在启动时肯定更糟,但是一旦代码启动并运行,它就不是一件大事了。实际上,您必须记住这里的一个重要点:Java代码不断由VM优化,因此在某些情况下,它比C++

推荐