<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
    <title>Millennium Medic</title>
    
    
    <link rel="alternate" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/" />
    <id>tag:typepad.com,2003:weblog-1860911</id>
    <updated>2012-01-05T16:34:29-06:00</updated>
    <subtitle>Prescriptions for a Healthy Cerner System</subtitle>
    <generator uri="http://www.typepad.com/">TypePad</generator>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/MillenniumMedic" /><feedburner:info uri="millenniummedic" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://hubbub.api.typepad.com/" /><feedburner:emailServiceId>MillenniumMedic</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><entry>
        <title>OnTrack Panther Supports Millennium 2012.x Code</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MillenniumMedic/~3/4morAu2Egsk/ontrack-panther-supports-millennium-2012x-code.html" />
        <link rel="replies" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/2012/01/ontrack-panther-supports-millennium-2012x-code.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a011570459bbb970b01676007e4c9970b</id>
        <published>2012-01-05T16:34:29-06:00</published>
        <updated>2012-01-05T16:34:29-06:00</updated>
        <summary>By Chris Lanaman David Hallberg’s recent blogs on preparing for your Millennium® site’s upgrade to 2012.x code have coincided with several conversations with clients who use OnTrack™ Panther™ to manage and monitor system performance. They want to know: “Does Panther support Millennium 2012.x code?” And: “Will OnTrack audits still point out issues as I test the new code and then move it to prod?” I want to assure you that all Softek OnTrack products and services support this version of code. For those of you not familiar with Softek, our software and services give you a high level of visibility...</summary>
        <author>
            <name>Millennium Medic</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Configuration" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Consistency" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="IT Team" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Troubleshooting" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://millenniummedic.typepad.com/millennium-medic/"><div xmlns="http://www.w3.org/1999/xhtml"><p>By Chris Lanaman</p>
<p>David Hallberg’s recent blogs on preparing for your Millennium<sup>®</sup> site’s upgrade to 2012.x code have coincided with several conversations with clients who use OnTrack™ Panther™ to manage and monitor system performance. They want to know: “Does Panther support Millennium 2012.x code?” And: “Will OnTrack audits still point out issues as I test the new code and then move it to prod?” I want to assure you that all Softek OnTrack products and services support this version of code.</p>
<p>For those of you not familiar with Softek, our software and services give you a high level of visibility into your EMR system along with actionable evaluations and alerts developed and serviced by a team who collectively had years of experience at Cerner and various Millennium hospitals.</p>
<p>As we enter a new year, we have the same great news we have had since Cerner developed Millennium version 7.6: Softek is working to provide your site an objective view into the performance and reliability of your Millennium system.</p>
<p>The following table lists the Millennium code versions supported by OnTrack Panther.</p>
<table border="1" cellpadding="2" cellspacing="0" style="font-size: 10px; font-family: arial; line-height: 10px;">
<tbody>
<tr>
<td valign="top" width="133"><strong>Millennium Version</strong></td>
</tr>
<tr>
<td valign="top" width="133">7.6</td>
</tr>
<tr>
<td valign="top" width="133">7.7</td>
</tr>
<tr>
<td valign="top" width="133">7.8</td>
</tr>
<tr>
<td valign="top" width="133">2001.01</td>
</tr>
<tr>
<td valign="top" width="133">2001.x</td>
</tr>
<tr>
<td valign="top" width="133">2003.01</td>
</tr>
<tr>
<td valign="top" width="133">2003.02</td>
</tr>
<tr>
<td valign="top" width="133">2005.01</td>
</tr>
<tr>
<td valign="top" width="133">2005.02</td>
</tr>
<tr>
<td valign="top" width="133">2007.02</td>
</tr>
<tr>
<td valign="top" width="133">2007.03-2007.17</td>
</tr>
<tr>
<td valign="top" width="133">2007.18.x</td>
</tr>
<tr>
<td valign="top" width="133">2007.19.x</td>
</tr>
<tr>
<td valign="top" width="133">2010.01.x</td>
</tr>
<tr>
<td valign="top" width="133">2010.02.x</td>
</tr>
<tr>
<td valign="top" width="133">2012.01.x</td>
</tr>
<tr>
<td valign="top" width="133">Choose and Book</td>
</tr>
<tr>
<td valign="top" width="133">eBookings</td>
</tr>
</tbody>
</table>
<p><strong>Prognosis:</strong> Third-party support that gives your organization intuitive management of your Millennium EMR system can be the foundation for a smooth upgrade to 2012.x code.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/MillenniumMedic/~4/4morAu2Egsk" height="1" width="1" /></div></content>



    <feedburner:origLink>http://millenniummedic.typepad.com/millennium-medic/2012/01/ontrack-panther-supports-millennium-2012x-code.html</feedburner:origLink></entry>
    <entry>
        <title>Citrix Load Balancing in a Complex Environment</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MillenniumMedic/~3/y2uM9OdBPac/citrix-load-balancing-in-a-complex-environment.html" />
        <link rel="replies" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/2011/12/citrix-load-balancing-in-a-complex-environment.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a011570459bbb970b0162fdce07a5970d</id>
        <published>2011-12-15T10:00:00-06:00</published>
        <updated>2011-12-15T10:48:22-06:00</updated>
        <summary>By David Hallberg A recent client’s Millennium® performance issues had me stumped. The organization had a normal two-application and two-database node configuration. It was using very little CPU and had virtually no paging on these nodes. Queuing was pretty good from an MQ and proprietary middleware perspective. There was a lot of interface queuing, but the organization was on an older version of Oracle and we were not going to be able to address this area of their queuing until a database rebuild. So how could I help them right then? I turned my attention to the Citrix servers —...</summary>
        <author>
            <name>Millennium Medic</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Consistency" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Troubleshooting" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://millenniummedic.typepad.com/millennium-medic/"><div xmlns="http://www.w3.org/1999/xhtml"><p>By David Hallberg</p>
<p>A recent client’s Millennium<sup>®</sup> performance issues had me stumped. The organization had a normal two-application and two-database node configuration. It was using very little CPU and had virtually no paging on these nodes. Queuing was pretty good from an MQ and proprietary middleware perspective. There was a lot of interface queuing, but the organization was on an older version of Oracle and we were not going to be able to address this area of their queuing until a database rebuild. So how could I help them right then?</p>
<p>I turned my attention to the Citrix servers — they had more than 100 of them — to check the load balance. The backend gave me little to go on, so I had to look deeper to see how the Citrix servers were connecting with Millennium. In this CPOE shop, Discern Notification alerts clinicians to potential problems with their order deliveries, so I chose to evaluate the Citrix load balancing in this component of Millennium.</p>
<p>When I did, I found that the method of Citrix load balancing being used was causing inconsistent response times for clinicians. Fast application and database nodes could not fix this performance problem. Rather, the team had to use the Citrix load balancing tool on Application User Load to more evenly distribute the core applications of, for instance, PowerChart<sup>® </sup>and FirstNet<sup>®</sup>. The better application distribution resulted in more consistent performance for their clinicians.</p>
<p>If you want to investigate whether you have a load balancing issue between Citrix and the application nodes, I’ll take you through the steps to parse your data and then evaluate the results. Start with one of the following select statements (either from CCL or SQL*Plus):</p>
<p><em>            CCL&gt; rdb select * from EKS_NOTIFY_DEST go </em></p>
<p><em>            SQLPLUS&gt; select * from EKS_NOTIFY_DEST ;</em></p>
<p>Your output will look something like this (for space reasons, I have eliminated three columns on the right and reduced my example to two rows of data):</p>
<table border="1" cellpadding="2" cellspacing="0" style="font-size: 10px; font-family: arial; line-height: 10px;">
<tbody>
<tr>
<td bgcolor="#cccccc" valign="bottom"><strong>LOCATION</strong></td>
<td bgcolor="#cccccc" valign="bottom"><strong>TCP_IP_ADDR</strong></td>
<td bgcolor="#cccccc" valign="bottom"><strong>TCP_IP<br />_PORT</strong></td>
<td bgcolor="#cccccc" valign="bottom"><strong>PERSON<br />_ID</strong></td>
<td bgcolor="#cccccc" valign="bottom"><strong>UPDT_DT_TM</strong></td>
<td bgcolor="#cccccc" valign="bottom"><strong>UPDT_ID</strong></td>
<td bgcolor="#cccccc" valign="bottom"><strong>UPDT<br />_TASK</strong></td>
</tr>
<tr>
<td align="right" valign="bottom">54099</td>
<td valign="bottom">192.168.1.62!RLL9989:<br />PROD:DEARMAN</td>
<td align="right" valign="bottom">2048</td>
<td align="right" valign="bottom">11199999</td>
<td align="right" valign="bottom">2011/11/15 01:54:54</td>
<td align="right" valign="bottom">11199999</td>
<td align="right" valign="bottom">3071000</td>
</tr>
<tr>
<td align="right" valign="bottom">1555555</td>
<td valign="bottom">192.168.1.61!DAVID.<br />HALLBERG:PROD:DWH9999</td>
<td align="right" valign="bottom">2048</td>
<td align="right" valign="bottom">8999999</td>
<td align="right" valign="bottom">2011/11/04 07:33:07</td>
<td align="right" valign="bottom">8999999</td>
<td align="right" valign="bottom">3071000</td>
</tr>
</tbody>
</table>
<p>The LOCATION column identifies the device location, set either on the fat client or via the WTS location tool. The TCP_IP_PORT is the port the client is listening on. The PERSON_ID is a unique number for the user name in Millennium. The UPDT_DT_TM shows the last time there was any communication between the application nodes and this client. UPDT_ID is a repeat of the PERSON_ID. UPDT_TASK is the task number for the process that stuck the row in the database or changed it. This number should be 3071000, which is the Discern Notification. Not shown here are UPDT_CNT; UPDT_APPLCTX, the application context number for the application updating this table; and APP_VERSION_NBR, the version of Discern Notification that the client is using. The version generally will be 2, unless you are on some very old code.</p>
<p>The TCP_IP_ADDR column is the key to making sense of this gibberish. It is composed of four elements: the TCP/IP address of the Citrix server or fat client connecting to Millennium, the Microsoft user name, the Millennium domain the connection is for, and the Millennium user name. The next step is to parse the TCP_IP_ADDR column into these four elements.</p>
<p>Import the table into Excel to use the Text to Columns function, and insert three columns between TCP_IP_ADDR and TCP_IP_PORT.</p>
<p>To parse the fat clients or older Citrix servers:</p>
<ol>
<li>Sort the TCP_IP_ADDR column so any cells with a “$” separating the TCP/IP address (first element) from the Microsoft user name (second element) are at the top of the list. Highlight these cells only. </li>
<li>From the Excel Data tab, select the <em>Text to Column</em> function, select <em>Delimited</em> and click <em>Next.</em></li>
<li>In the next box, uncheck <em>Tab,</em> select <em>Other,</em> type <em>$</em> in the open cell and click <em>Finish. </em></li>
</ol>
<p>To parse the rest of the Citrix servers:</p>
<ol>
<li>Highlight the other cells in the TCP_IP_ADDR column, which should all have a “!” between the TCP/IP address and Microsoft user name. </li>
<li>With the Text to Column function, select <em>Delimited</em> and click <em>Next.</em></li>
<li>In the next box, uncheck <em>Tab,</em> select <em>Other,</em> type <em>! </em>in the open cell and click <em>Finish.</em></li>
</ol>
<p>The first part of the parsing is complete. You now have a list of all the TCP/IP addresses that have connected to the application nodes for Discern Notification. Next you want to see all of the Microsoft user names, Millennium domains and Millennium user names that have connected to the application nodes for Discern Notification.<em /></p>
<ol>
<li>In row 1 column C, which should be blank, type “<em>Microsoft Username:Millennium Domain:Millennium Username”</em>. </li>
<li>Highlight all the rows in column C, which contains the remaining three data elements. </li>
<li>From the Excel Data tab, select the <em>Text to Column</em> function, select <em>Delimited</em> and click <em>Next.</em></li>
<li>In the next box, uncheck <em>Tab,</em> select <em>Other,</em> type <em>: </em>in the open cell and click <em>Finish.</em></li>
</ol>
<p>The next step in getting usable information is to build a Pivot Table (steps are based on Excel 2010) to see the TCP/IP addresses that have the most Discern Notifications:</p>
<ol>
<li>From the Insert tab, select Pivot Table and verify the entire spreadsheet is highlighted. The dialog box should read, “Table1.” Select <em>OK.</em> </li>
<li>From the Pivot Table Field List, left-click and drag the <em>TCP_IP_ADDR </em>field to the Row Labels box. </li>
<li>Left-click and drag the <em>TCP_IP_ADDR</em> field to the Values box. The Values box will then read, “Count of TCP….” The Table to the left will have two columns.</li>
<li>In cell A3, titled Row Labels, click the down arrow and select <em>More Sort Options</em>.</li>
<li>Select <em>Descending (Z to A) by:,</em> click the down arrow to change the value to <em>Count of TCP_IP_ADDR</em> and select <em>OK.</em></li>
</ol>
<p>The resulting table will list the Discern Notifications for each TCP/IP address, as shown in this example:</p>
<table border="1" cellpadding="2" cellspacing="0" style="font-size: 10px; font-family: arial; line-height: 10px;">
<tbody>
<tr>
<td bgcolor="#cccccc"><strong>Row Labels</strong></td>
<td bgcolor="#cccccc"><strong>Count of TCP_IP_ADDR</strong></td>
</tr>
<tr>
<td>192.168.1.213</td>
<td align="right">469</td>
</tr>
<tr>
<td>192.168.1.55</td>
<td align="right">426</td>
</tr>
<tr>
<td>192.168.1.54</td>
<td align="right">67</td>
</tr>
<tr>
<td>192.168.1.57</td>
<td align="right">48</td>
</tr>
<tr>
<td>192.168.1.137</td>
<td align="right">43</td>
</tr>
<tr>
<td>192.168.1.125</td>
<td align="right">36</td>
</tr>
<tr>
<td>192.168.1.79</td>
<td align="right">35</td>
</tr>
<tr>
<td>192.168.1.122</td>
<td align="right">34</td>
</tr>
<tr>
<td>192.168.1.132</td>
<td align="right">31</td>
</tr>
<tr>
<td>192.168.1.107</td>
<td align="right">30</td>
</tr>
</tbody>
</table>
<p>If your servers are properly balanced, the count should be fairly similar across all the Citrix servers. If you have fat clients, they will have a smaller count. In my example, the server ending in .213 handles 15.63 times more connections than the .107 server. Even if we exclude the first two rows, the .54 server is doing 2.23 times more work than the .107 server. Once this imbalance is corrected, clinician response times will be more consistent.</p>
<p><strong>Prognosis:</strong> A little research might uncover Citrix load balancing issues that are causing response time variability or other performance problems for your clinicians.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/MillenniumMedic/~4/y2uM9OdBPac" height="1" width="1" /></div></content>



    <feedburner:origLink>http://millenniummedic.typepad.com/millennium-medic/2011/12/citrix-load-balancing-in-a-complex-environment.html</feedburner:origLink></entry>
    <entry>
        <title>Preparing for Your 2012 Upgrade, Part 2</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MillenniumMedic/~3/pk_ihGH5B84/preparing-for-your-2012-upgrade-part-2.html" />
        <link rel="replies" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/2011/11/preparing-for-your-2012-upgrade-part-2.html" thr:count="3" thr:updated="2011-11-28T22:30:12-06:00" />
        <id>tag:typepad.com,2003:post-6a011570459bbb970b0153937166a2970b</id>
        <published>2011-11-23T07:22:30-06:00</published>
        <updated>2011-11-23T07:22:30-06:00</updated>
        <summary>By David Hallberg Today, in the second half of my recommendations for ensuring a smooth transition to Millennium version 2012.x, I’ll look at Windows and Cerner’s back-end application nodes. (To see my thoughts on Shared Service Proxy settings and WebSphere MQ, see Part 1.) I recommend you check your settings in the following areas of your 2012.x domain: Microsoft added the User Account Control to Windows to protect computers from running unwanted programs, but this feature can cause unwanted interruptions in running Millennium applications. If you are using Windows Server 2008 SP1 32-bit or Windows Server 2008 R2 with Virtual...</summary>
        <author>
            <name>Millennium Medic</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Architecture" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Configuration" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://millenniummedic.typepad.com/millennium-medic/"><div xmlns="http://www.w3.org/1999/xhtml"><p>By David Hallberg</p>
<p>Today, in the second half of my recommendations for ensuring a smooth transition to Millennium version 2012.x, I’ll look at Windows and Cerner’s back-end application nodes. (To see my thoughts on Shared Service Proxy settings and WebSphere MQ, see <a href="http://millenniummedic.typepad.com/millennium-medic/2011/11/preparing-for-your-2012-upgrade-part-1.html" target="_self">Part 1</a>.) I recommend you check your settings in the following areas of your 2012.x domain:</p>
<ul>
<li>Microsoft added the User Account Control to Windows to protect computers from running unwanted programs, but this feature can cause unwanted interruptions in running Millennium applications. If you are using Windows Server 2008 SP1 32-bit or Windows Server 2008 R2 with Virtual Machines (VMs) running Windows Server 2003 R2 SP2 or Server 2008 SP1 32-bit, make sure the User Account Control is disabled. Two documents explain how: <a href="http://windows.microsoft.com/en-US/windows-vista/Turn-User-Account-Control-on-or-off" target="_self">“Turn User Account Control On or Off”</a> from Windows and <a href="http://technet.microsoft.com/en-us/library/cc709691(WS.10).aspx" target="_self">“User Account Control Step-by-Step Guide”</a> from Microsoft TechNet. </li>
<li>DNS devolution includes improved security in Windows Server 2008, Vista and Windows 7. Make sure you have it set. Documents to explain how are on uCern at “<a href="https://wiki.ucern.com/display/reference/Windows+Vista+Minimal+Configuration+Guide">Windows Vista Minimal Configuration Guide</a>, <a href="https://wiki.ucern.com/display/reference/Install+Windows+2008">Install Windows 2008</a>” or “<a href="https://cernercare.com/accounts/login?returnTo=https%3A%2F%2Fwiki.ucern.com%2Fplugins%2Fservlet%2Fopenid%3Fprovider%3Dhttps%253A%252F%252Fcernercare.com%252Faccounts%252Fopenid%26destination%3D%252Fdisplay%252Freference%252FInstall%252BWindows%252B2008" target="_self">Microsoft Windows 7 and Windows Vista Configuration.”</a> Microsoft offers <a href="http://support.microsoft.com/kb/957579" target="_self">“Post Installation Behavior … after you install the DNSA update.” </a></li>
<li>In the past six months, I have run across more and more sites that have incorrect settings for permissions and owners of files and directories. You can correct the settings by running the secure_cerner_500 executable located in the $cer_exe filesystem. Run it as root, and provide the correct inputs. One caution about this executable: If you are running more than one domain on the same server, lpar, npar or vpar, you have to remove the sticky bit on the files in $cer_fifo, $cer_lock and $cer_usock. If you only have one domain per server, lpar, npar or vpar, this will not be an issue. </li>
<li>Defrag the $cer_config filesystem to improve throughput for the security and transaction database servers. </li>
<li>Use the bcheck tool to rebuild the dic.idx file on each application node. If bcheck is not in your $cer_exe filesystem, look in $cer_ocd and find the file named bcheck.dat. Rename the file to bcheck, and put it in $cer_exe. You can search uCern or log a Service Request to get Cerner’s recommended flags to use on this. You might also be able to use the -? flag to get a list of the switches that can be used when you create the file.</li>
<li>Finally, you want to check the dedicated Shared Service Proxies (SSPs) for your security servers to make sure they won’t be overloaded with connections. At a minimum, you need an SSP for each instance of the Security Slave processes. If you want to have the Security Master service on its own SSP, add one more instance than is needed for the Security Slaves. This means you will have an SSP on the application nodes with no connections, but that’s okay. The SSP only takes 3MB of memory. If you have 2 Security Slaves running with your Security Master and 3 Security Slaves on your other application nodes, you will probably have to increase to at least 5 Security Slaves running with the Security Master and 6 Security Slaves everywhere else. This means you’ll need at least 6 dedicated SSPs for the Security Slaves; if you want a dedicated SSP for the Security Master service, you’ll need 7 dedicated SSPs. Remember to start the dedicated SSPs prior to starting additional Security Slaves in order to get the desired load balancing. Your goal is to keep the maximum connections for each Security Slave under 300. You can check the maximum connections from the Server Control Panel. If you want the steps for how to do it, send me a comment, and I’ll send them to you.</li>
</ul>
<p style="padding-left: 30px;"><strong>Prognosis:</strong> If you prepare for conversion by looking at and correcting your infrastructure and key items in your 2012.x domain, you will have a much quieter upgrade.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/MillenniumMedic/~4/pk_ihGH5B84" height="1" width="1" /></div></content>



    <feedburner:origLink>http://millenniummedic.typepad.com/millennium-medic/2011/11/preparing-for-your-2012-upgrade-part-2.html</feedburner:origLink></entry>
    <entry>
        <title>Preparing for Your 2012 Upgrade, Part 1</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MillenniumMedic/~3/3B0wkatahA8/preparing-for-your-2012-upgrade-part-1.html" />
        <link rel="replies" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/2011/11/preparing-for-your-2012-upgrade-part-1.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a011570459bbb970b015436a1b415970c</id>
        <published>2011-11-04T10:59:49-05:00</published>
        <updated>2011-11-04T10:59:49-05:00</updated>
        <summary>By David Hallberg Readers have been asking about the changes coming with Millennium® version 2012.x. This major code upgrade is the first Millennium release that supports Linux as a database, and all Cerner clients are being encouraged to support it. When it hits prod early next year, it will contain a number of upgrades to help users file the reports needed for Meaningful Use reimbursements. Over my next two postings, I’ll share what I know about the release from a technical perspective. Let me start with a warning. Do not follow Cerner’s recommendation to reduce the number of Shared Service...</summary>
        <author>
            <name>Millennium Medic</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Architecture" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Configuration" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://millenniummedic.typepad.com/millennium-medic/"><div xmlns="http://www.w3.org/1999/xhtml"><p>By David Hallberg</p>
<p>Readers have been asking about the changes coming with Millennium<sup>®</sup> version 2012.x. This major code upgrade is the first Millennium release that supports Linux as a database, and all Cerner clients are being encouraged to support it. When it hits prod early next year, it will contain a number of upgrades to help users file the reports needed for Meaningful Use reimbursements. Over my next two postings, I’ll share what I know about the release from a technical perspective.</p>
<p>Let me start with a warning. Do <em><strong>not </strong></em>follow Cerner’s recommendation to reduce the number of Shared Service Proxies (SCP Entry ID 1) to between 1 and 4. If you do, you will encounter several sporadic performance issues with Millennium that will be extremely difficult to track down. I recommend that you run 10 to 20 SSPs so that you have more consistent response times from all of the solutions. I realize these processes are not used for communicating with the clients or Citrix servers, but they are doing work — without taking up much space. Since each instance takes about 3.3MB of memory, 20 instances would consume only 66MB of memory, a trivial amount for today’s typical application node that has at least 32GB of memory.</p>
<p>The Millennium upgrade process begins by ensuring that your infrastructure is sound. The rest of today’s post will look at IBM WebSphere MQ, and my next post will make recommendations for Windows before moving on to Millennium’s back-end application nodes.</p>
<p>I recommend you upgrade to WebSphere MQ version 7. The links below will take you to IBM documents that give MQ benchmarks for various operating systems. You want to review the sections on Performance and Capacity Limits and Tuning Recommendation. Then choose the largest value between Millennium’s baseline documents and these documents.</p>
<p><strong>AIX:</strong> <a href="http://www-01.ibm.com/support/docview.wss?rs=171&amp;uid=swg24020270&amp;loc=en_US&amp;cs=utf-8&amp;lang=en" target="_self">“MP6N: WebSphere MQ for AIX V7.0 — Performance Evaluations”</a></p>
<p><strong>HP-UX:</strong> <a href="http://www-01.ibm.com/support/docview.wss?rs=171&amp;uid=swg24020284&amp;loc=en_US&amp;cs=utf-8&amp;lang=en" target="_self">“MP6O: WebSphere MQ for HP-UX V7.0 — Performance Evaluations”</a></p>
<p><strong>Linux:</strong> <a href="http://www-01.ibm.com/support/docview.wss?rs=171&amp;uid=swg24020290&amp;loc=en_US&amp;cs=utf-8&amp;lang=en" target="_self">“MPL5: WebSphere MQ for Linux (Intel) V7.0 — Performance Evaluations”</a></p>
<p>Before going live, make sure you correct any errors resulting from the MQ upgrade. Errors will be shown on the Lights On Network under the System Compliance tab. Look for Known Errors Non-Compliance rows that cover MQ.</p>
<p>If you decide to use MQ version 6, you can reference the following documents for your platform. Again, look at the Performance and Capacity Limits and Tuning Recommendation sections, and choose the largest value between Millennium’s baseline documents and these documents.</p>
<p><strong>AIX:</strong> <a href="http://www-01.ibm.com/support/docview.wss?uid=swg24009979" target="_self">“MP6K: WebSphere MQ for AIX V6.0 — Performance Evaluations”</a></p>
<p><strong>HP-UX:</strong> <a href="http://www-01.ibm.com/support/docview.wss?rs=171&amp;uid=swg24009978&amp;loc=en_US&amp;cs=utf-8&amp;lang=en" target="_self">“MP6L: WebSphere MQ for HP-UX V6.0 — Performance Evaluations”</a></p>
<p><strong>Linux:</strong> <a href="http://www-01.ibm.com/support/docview.wss?rs=171&amp;uid=swg24009977&amp;loc=en_US&amp;cs=utf-8&amp;lang=en" target="_self">“MPL3: WebSphere MQ for Linux (Intel) V6.0 —Performance Evaluations”</a></p>
<p>Due to the increased number of ports being used by MQ on the front end, I suggest you review <a href="http://support.microsoft.com/kb/196271" target="_self">Microsoft Support article 196271</a> (previously published under Q196271). Based on Microsoft’s recommendation, I suggest increasing the MaxUserPort to 65534. You can use a tool called <a href="http://www.speedguide.net/downloads.php" target="_self">TCP Optimizer</a>. Select the link to the new TCP Optimizer version 3.0.8. You want this executable to be run in XP SP2 mode, and you will have to be a local administrator for all the appropriate keys to be modified. Assuming you are running on Windows Server 2008, any version, here’s the steps to follow: Right-click on the downloaded executable, select <em>Troubleshoot Compatibility,</em> select <em>Try Recommended Settings,</em> select <em>Start the program, </em>slide the slider bar to 100+Mbps, select <em>Modify All Network Adapters,</em> select <em>Optimal,</em> select <em>Apply Changes,</em> and select <em>OK</em>. Finally, reboot your computer.</p>
<p>Keep an eye on the MQ statistics for Enqueue and Dequeue counts. If any Java services are in the top 30, you should consider splitting them. The split process would be similar to the process I described in the <a href="http://millenniummedic.typepad.com/millennium-medic/steps-to-ensuring-a-firstclass-upgrade.html" target="_self">“Steps to Ensuring a First-Class Upgrade”</a> blog (under step 2, Java Server Stress).</p>
<p><strong>Prognosis:</strong> Doing a little research and establishing a solid infrastructure is the first step to ensuring a smooth conversion.</p>
<p><strong>Next:</strong> Proper settings for Windows, permissions and ownerships, security slaves and more.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/MillenniumMedic/~4/3B0wkatahA8" height="1" width="1" /></div></content>



    <feedburner:origLink>http://millenniummedic.typepad.com/millennium-medic/2011/11/preparing-for-your-2012-upgrade-part-1.html</feedburner:origLink></entry>
    <entry>
        <title>An Abnormal Definition of Normal</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MillenniumMedic/~3/GQun6TvKe3U/an-abnormal-definition-of-normal.html" />
        <link rel="replies" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/2011/10/an-abnormal-definition-of-normal.html" thr:count="1" thr:updated="2011-10-20T16:01:00-05:00" />
        <id>tag:typepad.com,2003:post-6a011570459bbb970b0153926fb96c970b</id>
        <published>2011-10-20T09:57:00-05:00</published>
        <updated>2011-10-20T09:57:00-05:00</updated>
        <summary>By David Hallberg Thanks to all of you who stopped by last week during the Cerner Health Conference. We had some great talks about your Millennium® performance expectations, although I was discouraged to find that for a number of you your expectations were exceedingly low. For example: Some of you claimed, “You cannot fix the performance of the application.” Others told me, “We are remote hosted and have been assured that we get the best performance that anyone can. When the applications are slow, that’s just the way it is.” One client showed me their Lights On Network data for...</summary>
        <author>
            <name>Millennium Medic</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Consistency" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Maintenance" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://millenniummedic.typepad.com/millennium-medic/"><div xmlns="http://www.w3.org/1999/xhtml"><p>By David Hallberg</p>
<p>Thanks to all of you who stopped by last week during the Cerner Health Conference. We had some great talks about your Millennium<sup>®</sup> performance expectations, although I was discouraged to find that for a number of you your expectations were exceedingly low. For example:</p>
<ul>
<li>Some of you claimed, “You cannot fix the performance of the application.” </li>
<li>Others told me, “We are remote hosted and have been assured that we get the best performance that anyone can. When the applications are slow, that’s just the way it is.” </li>
<li>One client showed me their Lights On Network data for the number of transactions that took over 9 seconds, and I almost fell off my chair. Though the percentage was low, the actual number of transactions was enormous. “That’s way too many,” I said. “It’s the best we can get,” he replied. </li>
<li>Still another client was told they needed to spend more than $1 million in hardware upgrades to fix their problem. </li>
</ul>
<p>If you’ve been coaxed into believing any of these statements, let me tell you what I told them: Slow performance is not normal. OK performance is not OK. Don’t believe that you are the fastest Millennium client and there is nothing more for you to do. Your clinicians should not have to wait for 9 seconds for a transaction to go through. Many problems can be fixed without any additional hardware. I know. I have seen Millennium perform extremely well over the past 14 years.</p>
<p>When you are equipped with just a little knowledge of where you have bottlenecks in your system and take the appropriate corrective action, you can see immediate improvements. These improvements do not need to take years and do not require a new version of code, a new operating system or new version of Oracle. You can improve what you have. In the case of the client told to spend $1 million on hardware, we were able to work with the existing hardware and make a couple of uptime changes. Lights On showed that transaction speed for the clinicians had increased and variability had decreased.</p>
<p>Readers of this blog know that I regularly encourage you to trust your clinicians and believe your own eyes rather than blindly accepting performance excuses from the company that wrote the software and is now managing the environment. If the responsiveness of the system is slow, you should be able to see the first level of issues immediately. In a matter of hours or a few days — not months or years — you can determine the initial action steps.</p>
<p>I need to emphasize the words “initial steps.” There is no single silver bullet that will slay your performance dragon; you’ll need a magazine full of lead bullets. The beast is immune to silver but is susceptible to a lead overdose, to an ongoing maintenance regimen that accounts for your continually evolving EMR system. Every new package or service pack you install has the potential to change the processing of the entire system. Make sure you have the right people using the right tools to evaluate what is happening, to identify performance issues and to take action to correct the problems.</p>
<p><strong>Prognosis:</strong> If your current support structure is not helping you help your clinicians deliver care more effectively, it’s time to find one that will.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/MillenniumMedic/~4/GQun6TvKe3U" height="1" width="1" /></div></content>



    <feedburner:origLink>http://millenniummedic.typepad.com/millennium-medic/2011/10/an-abnormal-definition-of-normal.html</feedburner:origLink></entry>
    <entry>
        <title>X Marks Our Spot to Meet with You at CHC11 </title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MillenniumMedic/~3/Kzl3dFa6Sk4/x-marks-our-spot-to-meet-with-you-at-chc11-.html" />
        <link rel="replies" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/2011/10/x-marks-our-spot-to-meet-with-you-at-chc11-.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a011570459bbb970b014e8c0b3d4b970d</id>
        <published>2011-10-05T14:57:31-05:00</published>
        <updated>2011-10-05T14:57:31-05:00</updated>
        <summary>By Chris Lanaman If you’re one of the chosen few from your hospital coming to Kansas City for the Cerner Health Conference, you probably have a long to-do list: speakers, education sessions, exhibits, networking, a party or two. But I’m hoping you’ll strike out on your own at some point to visit with the team that’s been bringing you the Millennium Medic the past several years. Lucky Strike Lanes &amp; Lounge just a few blocks east of the CHC activities will be our spot throughout the conference. Why do we think you’ll want to add us to your already busy...</summary>
        <author>
            <name>Millennium Medic</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="See Us At..." />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://millenniummedic.typepad.com/millennium-medic/"><div xmlns="http://www.w3.org/1999/xhtml"><p>By Chris Lanaman</p>
<p><a href="http://millenniummedic.typepad.com/.a/6a011570459bbb970b015392172060970b-pi" style="display: inline;"><img alt="Chc" border="0" class="asset  asset-image at-xid-6a011570459bbb970b015392172060970b" src="http://millenniummedic.typepad.com/.a/6a011570459bbb970b015392172060970b-800wi" title="Chc" /></a> <br />If you’re one of the chosen few from your hospital coming to Kansas City for the Cerner Health Conference, you probably have a long to-do list: speakers, education sessions, exhibits, networking, a party or two. But I’m<a href="http://millenniummedic.typepad.com/.a/6a011570459bbb970b015392171e4d970b-pi" style="display: inline;" /> hoping you’ll strike out on your own at some point to visit with the team that’s been bringing you the Millennium Medic the past several years. Lucky Strike Lanes &amp; Lounge just a few blocks east of the CHC activities will be our spot throughout the conference. Why do we think you’ll want to add us to your already busy agenda?</p>
<ul>
<li><strong>We’re having a party, and you’re invited —</strong> Monday, Oct. 10<sup>th</sup>, from 7 p.m. to midnight at Lucky Strike, 1370 Grand Blvd. We might be a bit biased, but we think it’ll be one of the best of the week. It’s Softek’s annual Client Appreciation Party, but we’re welcoming non-clients as well for an evening of food, games, music, bowling and lots of prizes (we’re talking cool electronics). Your CHC badge is your ticket to get in, or you can sign up ahead of time and get more details at the <a href="http://softekinc.com/ontrack/chc.asp" target="_self">Softek website</a>.</li>
<li><strong>Our Millennium experts are sharing their expertise.</strong> Where this blog is best used to address common system issues, a face-to-face meeting would let us answer your specific questions. Stop by Lucky Strike any time from Monday morning to Wednesday noon — we’ll even be there Tuesday night overlooking the Big Bash in the Power &amp; Light District. Come talk with us and enjoy a free meal and bowling. If you prefer to set up an appointment, call Erin at 913.981.5242.</li>
<li><strong>We know more about your system than you might think.</strong> Softek conducts independent audits of the Millennium production environment, and we can show you what we’ve discovered in every audit we’ve ever run, findings that have huge clinical and financial implications.</li>
<li><strong>We’ve got our head in the clouds.</strong> Softek OnTrack’s new cloud access is part of our commitment to opening access to Millennium users to more information about their system. We’d love to tell you about it: Millennium whitepapers and user training at OnTrack University, user forums, mobile applications for system management and other resources. </li>
</ul>
<p>The CHC will be a busy week for education, association and recreation. We hope to enjoy all three with you.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/MillenniumMedic/~4/Kzl3dFa6Sk4" height="1" width="1" /></div></content>



    <feedburner:origLink>http://millenniummedic.typepad.com/millennium-medic/2011/10/x-marks-our-spot-to-meet-with-you-at-chc11-.html</feedburner:origLink></entry>
    <entry>
        <title>Going to Kansas City for the Cerner Health Conference?</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MillenniumMedic/~3/Va0srlOAD2I/going-to-kansas-city.html" />
        <link rel="replies" type="text/html" href="http://millenniummedic.typepad.com/millennium-medic/2011/09/going-to-kansas-city.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a011570459bbb970b014e8bc0fcbb970d</id>
        <published>2011-09-22T15:15:55-05:00</published>
        <updated>2011-09-22T15:12:00-05:00</updated>
        <summary>Many of you will be in Kansas City in a few weeks for the Cerner Health Conference. We’ll be on hand as well from our “headquarters” at Lucky Strike Lanes &amp; Lounge in the Kansas City Power &amp; Light District a few blocks east of Bartle Hall and the CHC. We’d love to talk with you in person about your Millennium® system and will have more details in the next blog concerning our activities for the week. Today, however, we want you to get excited about the city we call home. Here’s a list of 10 places you might not...</summary>
        <author>
            <name>Millennium Medic</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="See Us At..." />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://millenniummedic.typepad.com/millennium-medic/"><div xmlns="http://www.w3.org/1999/xhtml"><p>Many of you will be in Kansas City in a few weeks for the Cerner Health Conference. We’ll be on hand as well from our “headquarters” at Lucky Strike Lanes &amp; Lounge in the Kansas City Power &amp; Light District a few blocks east of Bartle Hall and the CHC. We’d love to talk with you in person about your Millennium® system and will have more details in the next blog concerning our activities for the week.</p>
<p>Today, however, we want you to get excited about the city we call home. Here’s a list of 10 places you might not have thought to visit while you’re here…but are definitely worth considering. Our potpourri includes places that appeal to all sorts of interests: history, art, architecture, sports, music, barbeque (you are in KC, after all) and even potpourri.</p>
<ol>
<li>The story of the sinking of the steamboat Arabia in the Missouri River in 1856 is just as fascinating as its discovery in 1987 buried 45-feet deep in a cornfield half a mile from the river. The <a href="http://www.1856.com/" target="_self">Arabia Steamboat Museum</a> in the River Market documents it all and displays the china, food, guns and clothing preserved in the silt. Outside the museum, explore the Farmer’s Market and stroll the <a href="http://kcrivertrails.org/" target="_self">Riverfront Heritage Trail </a>to Berkley Riverfront Park.</li>
<li><a href="http://www.kc.frb.org/moneymuseum/includes/index.cfm" target="_self">The Money Museum </a>inside the Federal Reserve Bank of Kansas City gives you a view of the automated vault and sends you home with a bag of cash (sadly, it’s shredded). Across the street from the Fed, you can appreciate the irony in the 65-foot-high sculpture of cargo containers at Memorial Park. Sculptor John Salvest’s installation spells out its title: “IOU/USA.”</li>
<li>The <a href="http://www.theworldwar.org/s/110/new/index_community.aspx" target="_self">National World War I Museum </a>is housed in the Liberty Memorial across the lawn from the bank. Its 55,000 items include everything from common soldier gear to rare artifacts. The “Man &amp; Machine” exhibit shows German technology never before displayed in this country. </li>
<li>The <a href="http://www.archives.gov/central-plains/press/2011/11-27.html" target="_self">National Archives</a> west of the Liberty Memorial takes you back to an earlier war. The “Lee and Grant” exhibit contains artifacts and writings of two great Civil War generals.</li>
<li>The newly opened <a href="http://www.kauffmancenter.org/" target="_self">Kauffman Center for the Performing Arts </a>south of Bartle Hall owes its impressive front facade to the 27 cables supporting the glass and steel structure. Tours are available, and multimedia artist Laurie Anderson performs “Transitory Life” at 7 p.m. on Oct. 9. For another KC architectural gem, visit the Bloch Building at the <a href="http://www.nelson-atkins.org/" target="_self">Nelson-Atkins Museum of Art. </a>View 40 bronze sculptures by Auguste Rodin (of "The Thinker" fame) throughout the lobby.</li>
<li>Local entrepreneur Mary Carol Garrity, owner of the Nell Hill’s retail home stores, will speak at the downtown <a href="http://kclibrary.org/" target="_self">Kansas City Public Library </a>at 6:30 p.m. on Oct. 11. Also at the library is an exhibit of original illustrations by Missourian Thomas Hart Benton for some of Mark Twain’s signature works<em>.</em></li>
<li>KC’s most famous hometown brewery, the <a href="http://www.boulevard.com/" target="_self">Boulevard Brewing Co., </a>gives free tours (including tastings). Reservations are required. If you prefer the taste of coffee, visit the <a href="http://www.theroasterie.com/" target="_self">Roasterie Kansas City </a>down the road from the brewery.</li>
<li>Celebrate KC’s rich music and food tradition at the annual <a href="http://www.americanjazzmuseum.com/SiteResources/Data/Templates/t2.asp?docid=671&amp;DocName=A%20m%20e%20r%20i%20c%20a%20n%20J%20a%20z%20z%20M%20u%20s%20e%20u%20m%20.%20o%20r%20g%20|%20Home" target="_self">Rhythm and Ribs </a>festival Oct. 8 at the American Jazz Museum in KC's 18<sup>th</sup> and Vine district. The daylong festival features top jazz and blues performers and local food vendors. Also at 18<sup>th</sup> and Vine is the <a href="http://www.nlbm.com/" target="_self">Negro Leagues Baseball Museum.</a></li>
<li>If you prefer a faster pace, visit the <a href="http://www.collegebasketballexperience.com/" target="_self">College Basketball Experience </a>inside the Sprint Center. Besides learning all you want about the game, you’ll find lots of areas for play. </li>
<li>It’s race weekend at the <a href="http://www.kansasspeedway.com/?homepage=true" target="_self">Kansas Speedway </a>just a short interstate drive west of the metro area. Oct. 8 is the NASCAR Nationwide Series’ Kansas Lottery 300, and Oct. 9 is the NASCAR Sprint Cup Series’ Hollywood Casino 400. Next to the track is the <a href="http://www.legendsshopping.com/" target="_self">Legends </a>outlet mall, several major retailers, land for the soon-to-be-built Cerner office buildings and the <a href="http://www.livestrongsportingpark.com/" target="_self">Livestrong Sporting Park.</a> Major League Soccer’s Sporting KC plays Chivas Guadalajara at Livestrong on Oct. 12. </li>
</ol>
<p>You might be coming to the CHC to learn and spend time with colleagues, but we hope you also take time to enjoy a few of the places and activities unique to KC. </p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/MillenniumMedic/~4/Va0srlOAD2I" height="1" width="1" /></div></content>



    <feedburner:origLink>http://millenniummedic.typepad.com/millennium-medic/2011/09/going-to-kansas-city.html</feedburner:origLink></entry>
 
</feed><!-- ph=1 -->

