Hot Diggety! Pam Ochs was rumored to have written:
>
> I'm supporting an application running on Solaris, and it is
> experiencing performance problems during peak use times. I was asked
> to look at the OS and ascertain where the issue might be.
> One thing I do know is that I have no baseline to compare to. There
> has been no previous performance monitoring. It's entirely possible
> that the application is misbehaving, but I need to know how - is it
> chewing up memory? Making too many calls to the DB and overloading
> the network?
Lack of baseline does make these things much more ''interesting'' but by
no means insurmountable.
The first thing you'd do is: measure the various aspects so that you
at least have *something* to work with.
The major sources of info:
- vmstat info
- iostat info
- netstat -I <int> info
Between the three, you can usually get a better feeling for which type
of resource is really being pounded (CPU, memory, disk, or network).
vmstat's handy for looking at CPU and memory activity.
iostat for disk I/O.
netstat for network I/O.
Even though you don't have an existing baseline, you mention 'peak'
period which implies there's an off-peak period -- that's an opportunity
to baseline the off-peak activity right there. Then, of course, also at peak.
Look at the peak period numbers. Do you see any particular subsystem
clearly showing numbers in excess of what it can realistically sustain?
That would be the low-hanging fruit (aka the answer right there) and
give you a solid direction to chase further.
CPU: is it pegged at 100% busy? Run queue really high? Tons of context
switches?
Memory: any sr or de numbers? Especially de which could represent
serious memory starvation.
Disk: what's %w, %b percentage numbers look like? At or higher than 90%?
Network: does it look like it might be pumping out close to maximum
theoretical capacity for a particular interface type? E.g. 70+ Mbps for
Fast Ethernet.
Does I/O usage dramatically rise, usually around 100% busy while free
memory pages are running real low? Might be signs of swapping -- i.e.
insufficient physical memory or an app (or OS) setting that needs some
tuning to better match available physical memory.
All that's a starting point. Sometimes you have to dig in deeper,
especially if the interplay is complex.
Once you've identified the subsystem that's lacking, then you'll have
some more insight into what to take a closer look at, and see how the
app is managing that particular resource.
-Dan
_______________________________________________
Discuss mailing list
[email protected]
http://lopsa.org/cgi-bin/mailman/listinfo/discuss
This list provided by the League of Professional System Administrators
http://lopsa.org/