08 November 2012

Dev Tip: High Performance Network Programming with Java

Hi Folks,

Lets look into a how to High Performance Network Programming using Java. The slide goes through various topics like:
  •  Sync vs Async I/O ( includes sockets, buffers, etc..)
  • Garbage Collection (advantages / disadvantages)
  • Choosing a Framework ( Scala / Cloujure  etc..)
  • TCP RTO  (retransmission timeout)
  • UDP / TLS / HTTPS ( tweaking)
  • Small compute devices
  • EC2

Conclusion:
  • Failing Well
  • Scale vertically and horizontally
  • Scale vertically but remember... 
  • We can reliably take one Java process up to 990K open connections
  • What happens when that one process fails? 
  • What happens when you need to do maintenance?

No comments:

Post a Comment