I want to create high performance Java SSL server for GPL project. I made a small research on Google for available solutions. I found this example onjava.com/onjava/2004/09/01/examples/code.zip . It seems very outdated. Is there any other new version for Java 7? Also what are the best solutions for high performance Java SSL server?
I'm not going to download a ZIP file to examine source code and I doubt anyone else will either but the basic technique hasn't changed since then. If you have really high-performance requirements you should be looking into a hardware crypto accelerator.
There are very few around. There's one buried in Netty, another I think in Apache Tomcat, and some code from my book which is presently offline. Is the one in the O'Reilly book really an example of SSL over NO? i.e. is it really SSLEngine-based? I haven't read the book or seen the code but I would be very wary. It is easy to half-implement and almost impossible to get 100% right. Most of the attempts I've seen make assumptions about the SSL handshake, and/or don't handle renegotation correctly.
I'd question whether you should even use NIO for this unless you are already an expert in it. I would start with a conventional java.net server and see whether you really have a problem: and the problem if any will be more to do with scalability because of thread count than performance.