Question

One of my Railo web applications generates too many I/O requests.

Since it's hosted on an Amazon Ec2 instance, that directly affects my billing badly, because of EBS disk activity (hundreds of milions of operations).

How can I monitor I/O requests? The perfect tool would allow me to find which template/component makes intensive I/O.

I'm already using FusionReactor and that's great for profiling memory spaces and so on, but it doesn't have anything for I/O.

Was it helpful?

Solution

so you could start out by using the operating system monitoring tools to see if you have mainly reads or writes, next step is looking at memory issues despite it being an disk IO issue, maybe your servers are low on memory and thrashing the drives as they are swapping pages in and out of memory.

if you have not done so turn on the template cache this will stop railo checking the file system on every page request (provided you have the memory).

if you have plenty of memory (both for your OS and for the JVM) and you have template caching on start looking for your busy pages in fusion reactor, check for cffile, cfdirectory and other tags in these pages.... good luck.

also use of queries of queries is often a culprit in high disk io as internally a database is used which runs pages to disk on large resultsets if I remeber correctly.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top