Why the switch from Java to C++ for Catapult?

Hi everyone, I would like know the reasons behind this language change? Why is it better? What are the current benefits? Thanks!

I’m also surprised. Java is a good language.
Just need to optimize the existing code. Migrate to a key-value storage, exclude the use of heavy libraries (Spring, Hidernate, etc). These minimal changes will already significantly reduce the use of server resources. Perhaps need to revise the time synchronization algorithm or even abandon it (use ntpd demon).

I mean, C++ is not bad, but I was wondering the same as you, why not just improve the existing code? I’m sure there is a good reason for it. I would think that this is why Catapult is gonna take a while, as they have to build it from the ground-up.

Long story short and without waging some language war: mijin v1 is optimized version of nis1. For business scenarios it required some pretty powerful hardware (read: A LOT of memory).
NIS1 models weren’t designed for performance, they were designed for flexibility.

Perhaps need to revise the time synchronization algorithm or even abandon it (use ntpd demon).

Time synchronisation is really not an issue. There are various reasons why using ntp in p2p network is not the greatest idea (read: non-homomorphic networks).

2 Likes