Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Log GC Events
    • GC logging is inexpensive and can be very useful.
    • Args: (-XX:+PrintGC -XX:+PrintGCDateStamps -Xloggc:<some_abs_path>)
    • See also: -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles, -XX:GCLogFileSize
    • The logs are text and can be easily read by eye, script or a visualizer, e.g. jvisualvm.
  • Watch your IdP live
    • For load test or just watching one of the IdP hosts I like to activate jmxremote and use a remote jconsole.

A Day in the Life of an IdP

This shows heap space allocations for one day for one of our IdP nodes at the University of Washington.

  1. Java settings: -XX:+UseG1GC -Xss24m -Xms3g -Xmx3g -XX:MaxGCPauseMillis=400
  2. Load:  logins/min range from about 60 mid day to about 5 mid night.

 

Old spaceEden space
Image AddedImage Added
  1. Some per-request allocations migrate to old space, but are easily discarded during routine old space GC
    1. These didn't show in load tests
    2. Due to very low number of unique ids used by the load test
  2. The old collections at 16:00, 01:00 and 09:30 were due to a threshold (50% of total).
  3. Rapid increase of old use at 10:00 was due to a reload of InCommon metadata.
  4. Anomaly between 10:30 and 12:00 due to disconnect of jconsole.