При рассмотрении вариантов повышения производительности не забывайте о специальной сериализации. Вы можете позволить Java делать то, что она делает хорошо или, по крайней мере, достаточно хорошо, бесплатно , и предоставлять пользовательскую поддержку для того, что она делает плохо. Обычно это намного меньше кода, чем полная поддержка Externalizable.