Announcement

Collapse

Mirth Connect 3.12.0 Released!

Mirth Connect 3.12.0 is now available as an appliance update and on our GitHub page. This release includes database performance improvements, improves visual HL7 representation, message pruning, keystore handling, PDF generation, community contributions, and fixes several security vulnerabilities. This release also contains many improvements to commercial extensions. See the release notes for the list of fixes and updates.

Download | See What's New | Upgrade Guide | Release Notes

For discussion on this release, see this thread.
See more
See less

Excessive memory usage at idle

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Excessive memory usage at idle

    I recently set up Mirth in a small VM for a low-traffic project for our integration team. The VM is running on ESX and has 512MB of RAM and 1GB of disk it is using Sun Java 1.5 and postgres on a *very* stripped down Ubuntu install.

    Our ESX admin was asking why the VM was using up most of its allocated memory even though its disk and network usage was low. I checked and no one was using the system and the Mirth channels were all stopped, so it should be idle. `ps aux` shows that the java process running Mirth is using 400+ MB AT IDLE!

    As a short term fix I am setting max memory in conf/wrapper.conf, but I don't want to do that permanently. If Mirth needs the memory to process a large batch of messages I want it to be available, but if it's sitting there idle I don't want it hogging the shared resources of our ESX server.

    Is there a setting for Mirth or Java that will make the garbage collector run more aggressively?

    Should I file this as a bug? If so what information do I need to provide?

    Mirth runs great in this environment and it's great for testing and low traffic installations. I was asked to set it up for our integration team because I can build and run a fully functional Linux based VM with a smaller footprint than just a base Windows install. I'm creating a tutorial for the IT team here to educate them on how to do this. When that tutorial is done I'll post it here and share with the community.
    Jon Bartels

    Zen is hiring!!!!
    http://consultzen.com/careers/
    Talented healthcare IT professionals wanted. Engineers to sales to management.
    Good benefits, great working environment, genuinely interesting work.

  • #2
    Re:Excessive memory usage at idle

    Found a related bug in the parsing of wrapper.conf.

    http://www.mirthproject.org/communit...owse/MIRTH-704
    Jon Bartels

    Zen is hiring!!!!
    http://consultzen.com/careers/
    Talented healthcare IT professionals wanted. Engineers to sales to management.
    Good benefits, great working environment, genuinely interesting work.

    Comment


    • #3
      Re:Excessive memory usage at idle

      I don't have a solution for your problem right now, but as far as that bug report goes, keep in mind that specifying Xmx128m does NOT mean that the java process with only take 128mb. This means that the java heap will take at most 128mb. The amount that the java process takes is determined by how much is allotted to it by Windows or Linux. It is still strange that it uses on much at idle, but my guess is that it is allotted memory, and not necessarily used memory.
      Jacob Brauer
      Director, Software Development
      NextGen Healthcare

      sigpic

      Comment


      • #4
        Re:Excessive memory usage at idle

        Thanks jacob.

        Sorry for cluttering up the JIRA with an invalid bug report, my Java is a bit rusty.

        So this may be an issue with how ps or top report memory usage and memory allocation. I'll dig into the man pages and see what I can turn up.

        Edit: Ok I really think this is a reporting issue with ps/meminfo. I looked at the ESX console and it says that the VM has never used more than 80MB on the VMWare server, ever.

        Post edited by: jbartels, at: 01/11/2008 11:45
        Jon Bartels

        Zen is hiring!!!!
        http://consultzen.com/careers/
        Talented healthcare IT professionals wanted. Engineers to sales to management.
        Good benefits, great working environment, genuinely interesting work.

        Comment


        • #5
          Re:Excessive memory usage at idle

          To have a good picture about what's happening, you could use a Java Profiler prograrm (ie: JProfiler).

          With this tools you can review which tasks are eating the memory.

          Comment


          • #6
            Re:Excessive memory usage at idle

            We use a few profiling tools (including JProfiler) here at WebReach on Mirth in order to optimize memory and cpu usage. We haven't seen this sort of behavior, so hopefully it is related to the OS and not just Mirth. Let us know what you find!
            Jacob Brauer
            Director, Software Development
            NextGen Healthcare

            sigpic

            Comment

            Working...
            X