Love Fuel?    Donate

FuelPHP Forums

Ask your question about FuelPHP in the appropriate forum, or help others by answering their questions.
fuel slow trace
  • Hey guys,

    I have been using New Relic to monitor my app and I have been noticing some slow calls coming from fuel autoloader and fuel core init. I have a feeling is the actual server perhaps because im hammering it with 200 concurrent requests. However, I wanted to get you guys input on this. I created a controller with one method and it only returns result true (json encoded). And im calling this method with 200 concurrent connections. I have attached a trace for this call. I still cant think why some calls take at least 10s. I'm running on ec2 with a large instance, apache2, facgi, mpm_worker.




    image
     
  • It's logical that, in a call analysis, a lot of time is spend in the autoloader, given the fact that everyhing is a class and needs to be loaded. In most cases, business logic is very light,

    What is not logical, is that a call to the autoloader takes 3 seconds. This smells like an IOPS issue, perhaps the disk IO is maxed out at 200 reqs/s? I'm not familiar with EC2, but if you can create a few Mb tmpfs, and copy your code to it, all file I/O will comes from your tmpfs 'ramdisk', ruling out I/O issues.
  • I/O are pretty low actually. 
  • Then I'm clueless. I've never seen such figures, Autoloader::load() is only a handful of lines of code, and doesn't do anything fancy other then loading class files.

    You don't have a class that contains an _init() static method that needs a lot of processing?
  • Nope, I dont have any classes that are getting initiated with autoloader or anything. Thanks for looking into this though. 
  • If you find the cause, please let us know.

    We're constantly profiling the core to avoid issues like this, and we haven't seen this behaviour before.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion