Posts Tagged ‘ARSlist’

ARSLIST Awards at WWRUG11

September 22nd, 2011

WWRUG conference ARSLIST awards session…

Dan and Kelly on stage

Farthest traveller at the WWRUG11 conference
Siriam Poramattakorn from Bangkok Thailand

ARSLIST about 6800 posts last year
Server delivers approximately 65000 emails each day

BMC customer awards (Doug Mueller)
Con-Agra foods, Dev Technologies, Research In Motion

Doug Mueller explained why Twinkies are significant food items at RUG’s (yes, they are “food”)

Longest Thread
“Field ID outside of reserved range – warning”

Most intriguing subject line
“Smart Phone browser compatibility -Dolphin”

Most off topic
“We are looking for control-M experts on the east coast” (deteriorated into discussion of breast feeding) (Column IT)

Wake up and smell the coffee awards
(most posts)
Joe D’Souza (281 in past year) (Joe also picked up his MVP award from last year)

Most valuable poster
Misi Mladoniczky

Dan and Misi

How to tune AR Email Engine to get optimal permormance?

August 10th, 2011

ar system email engine

I have stumbled up on a amazing write up by Chad Hall on ARS List as an reply to a question regarding fine tuning email engine to process 100′s of emails at regular intervals and though out the day. The suggestions by Chad Hill are some of the best known practices we use and mentioned by BMC on some documents but he added several that are only known to few who had to build such systems which need to process high frequency of emails every minute.

Here are the points listed by Chad:

There are several things you can do to speed up emails. We have tuned ours so
that it can send between 300-500 per minute. We reach those levels several
times a day. We can get 1000 per minute if server load is low and the emails do
not contain ARTask attachments. Here are a few things you can do:

1. Use multiple private threads
        a. Setup a private RPC queue. Set max threads to the total number of
incoming and outgoing mailboxes you have.

        b. Specify this RPC number in emaildaemon.properties like this:
                com.remedy.arsys.emaildaemon.yourserver.RPC=390630

2. Configure multiple outgoing mailboxes
        a. If you have access to multiple SMTP servers, create one mailbox for
each SMTP server. You won't see much gain from using a single SMTP server and
aliasing it to allow creation of multiple Remedy mailboxes. A one-for-one on
mail servers to mailboxes seems to be a functional limit. But if you have 2
SMTP servers with 2 mailboxes you can double your throughput.

        b. If you have an Exchange server, create one for an Outlook profile.
(Consider creating multiple Outlook profiles and MAPI mailboxes if you really
need more throughput). MAPI tends to be much faster than SMTP but is prone to
issues with Exchange connectivity, the Outlook profile, etc.

        c. Setup workflow on AR System Email Messages using Set Fields to
specify the outgoing mailbox so that it uses a round robin approach.

3. Increase number of threads per mailbox (7.0.x only)
        a. This is a 7.0.x feature I haven't been able to use since I'm on 6.3.
But Support has achieved some outrageous improvements with these settings in
their test lab. If you're on 7.0.x, add these to your emaildaemon.properties
file. (Note: increasing these settings to higher numbers won't yield higher
throughput for some reason)
                com.remedy.arsys.emaildaemon.NumberOfSenderThreads=4
                com.remedy.arsys.emaildaemon.OutgoingMessagesQueueSize=2000

4. Dedicated Email Engine server
        a. Setup a separate server that does nothing but run the Email Engine
service. Search the BMC KB for instructions on changing the registry so that
the Email Engine service is not dependent on the local AR Server service. This
will allow you to run the Email Engine without running AR Server. Configure the
emaildaemon.properties to connect to your actual AR Server. This will really
help if your AR Server gets high CPU usage.

5. Increase the Java heap size
        a. Search for this in the BMC KB. Increase the max heap size to 512 MB
or 1 GB and you could see a big improvement if Java is using a lot of memory.

6. Turn off group and user caching
        a. Set this line in emaildaemon.properties so the Email Engine won't
cache all of your groups and users when it starts up. It will only cache them
as needed. It rarely actually needs that info and it uses a lot of memory. This
will also make the Email Engine service start much faster.
                com.remedy.arsys.emaildaemon.FetchUserGroupInfoOnDemand=true

7. Add additional indexes
        a. With SQL analysis we found some email engine queries that could
benefit from more indexes when you have quite a bit of history on your email
engine forms. Back on 5.1.1 these (and a few others BMC finally added as
standard) doubled my outgoing throughput. These include:
                AR System Email Association
                        1. Destination ID (improves performance)
                AR System Email Error Logs
                        1. Email ID (makes display of AR System Email Messages
records faster)
                        2. Create Date (makes troubleshooting easier)
                AR System Email Messages
                        1. Send Message (improves performance)
                        2. Date Sent (makes troubleshooting easier)
                        3. Create Date (makes troubleshooting easier)

8. Reduce the sent item history
        a. You can completely eliminate this by setting 'Delete Outgoing
Notification Messages' = "Yes" in each outgoing mailbox, or by setting
com.remedy.arsys.emaildaemon.SaveSentItem=False in your emaildaemon.properties
file. It sounds like you may have already done this.

        b. You can retain a few days worth of history by setting up an
escalation to delete records older than a few days from AR System Email
Messages, AR System Email Attachments, and AR System Email Association.

9. Set polling interval below 1 minute
        a. If 1 minute is not fast enough for you, and you have a low enough
volume for the server to handle frequent polls, set this in
emaildaemon.properties so it interprets your polling interval as a number of
seconds instead of minutes. You probably don't want to go below 15 seconds on
this or it would never really stop running.
                com.remedy.arsys.emaildaemon.MailboxPollingUnitIsMinutes=false

BY: Chad Hall
Source: ARS List