Archive

Posts Tagged ‘ESI’

mongrel-esi 0.5.4

June 26th, 2008

I did some testing on a really fast machine today. It’s Dell PowerEdge 2900.
It has two:

  • CPU:2x: Quad Core Intel® Xeon® E5410, 2×6MB Cache, 2.33GHz, 1333MHz FSB
  • Memory:8GB 667MHz (8×1GB), Dual Ranked DIMMs
  • Disk:146GB 15K RPM Serial-Attach SCSI 3Gbps

Running mongrel-esi 0.5.4, load testing a page with 9 esi fragments

4 unique fragment servers

  • frag1 sends 1,024 bytes and delays 0.05 before sending and is requested 3 times.
  • frag2 sends 4,096 bytes with no extra delay and is requested 2 times.
  • frag3 sends “<p>Hello there user</p>” with no extra delay and is requested 2 times.
  • frag4 sends 4,096 bytes with no extra delay and is requested 2 times.

The origin server sends 38,448 bytes with no extra delay and a max age of 10 seconds.
Read more…

Software , ,

mongrel-esi perf numbers

June 17th, 2008

I’ve been busy doing a lot of profiling and toning. I know it can be better and now it is. The graph below shows 2000 requests making 10 concurrent requests at a time. I’m comparing the latest version 0.5.1 to my previous version 0.4.2.

  sudo gem install mongrel-esi

Read more…

Software , ,

mongrel-esi 0.5.1 caching and more!

June 16th, 2008

Well, I’m out in California this week visiting my brother and helping my parents with the house. Not having a whole lot to do while we got grounded in Minneapolis, I worked on cleaning up mongrel esi.
Read more…

Software , , ,

More mongrel-esi improvements

June 8th, 2008

After a little time to relax this weekend, I decided it was time to improve the parser, by being smarter about how it buffers output. This means less code executing in ruby. Here’s the same benchmarks I ran before, this time against the new parser and the current stable 0.4 release. I think the reason the standard deviation increased is due to more time being spent by the parser in C. I plan to work on this by having it call rb_thread_schedule, at specific times to give other ruby threads a chance to run - this should help smooth out the standard deviation.
Read more…

Software , ,

mongrel-esi improvements

June 5th, 2008

After a few months away from mongrel-esi, I decided it was time to finish some long standing improvements.

Here’s the list:

  • Correctly handle max-age attribute
  • Ragel 6.x compatibility
  • Pipeline ESI fragment requests.

Read more…

Software , , ,

overlapping io for mongrel-esi

June 4th, 2008

I’ve been doing a little work on mongrel-esi to improve it’s concurrency. Here’s a little test script I wrote to verify some of my thinking. The tricky part, is keeping all the bytes in the correct order, while still requesting as much as possible in parallel. Here’s my thinking at the moment.
Read more…

Software , , , ,

ESI at RailsConf

June 2nd, 2008

While I was very disappointed to miss railsconf this year, I was very excited to hear about Aaron’s talk covering ESI. It was especially awesome to hear mongrel-esi mentioned. My plans for mongrel-esi so far are to improve it’s concurrency further once I get evdispatch stabilized.

Software ,