﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Steve Smith commented on An optimization story</title><description>Caching is your friend. :)
</description><link>http://ayende.com/3650/an-optimization-story#comment14</link><guid>http://ayende.com/3650/an-optimization-story#comment14</guid><pubDate>Mon, 20 Oct 2008 20:50:00 GMT</pubDate></item><item><title>Mohamed Meligy commented on An optimization story</title><description>Nice one, Oren,
  
I think MemCache, Velocity and such can help handle the memory caching for you in a nice way and can help in lookups if you store the data with labels and such.
</description><link>http://ayende.com/3650/an-optimization-story#comment13</link><guid>http://ayende.com/3650/an-optimization-story#comment13</guid><pubDate>Fri, 17 Oct 2008 09:30:19 GMT</pubDate></item><item><title>Ayende Rahien commented on An optimization story</title><description>Yes, it can be used outside of MonoRail
</description><link>http://ayende.com/3650/an-optimization-story#comment12</link><guid>http://ayende.com/3650/an-optimization-story#comment12</guid><pubDate>Thu, 16 Oct 2008 06:32:34 GMT</pubDate></item><item><title>Rafal commented on An optimization story</title><description>Hello, calling this dialogue a 'sense of humour' is an abuse, but it's good you're aware of it ;)
  
I have found your blog yesterday and really admire the job you are doing with Boo and DSL-s. This is probably the missing piece I've been looking for and I'll be checking that. Currently I'm implementing my open source workflow engine for .Net - the 'NGinn' project at 
[http://nginn.googlecode.com](http://nginn.googlecode.com), and I need a script environment with good 'call interception' mechanism - that is, with IQuackFu. I have started with Petro Protsyk's 'Script.Net' language, which is quite useful and elastic, however the Boo seems to have it all and more. 
  
I've got a question about the 'Brail' engine - can it be used outside the monorail framework? I would need such functionality for templating in various scenarios. How efficient is Brail?
  
  
Best regards and thanks for interesting read at your blog
  
Rafal
</description><link>http://ayende.com/3650/an-optimization-story#comment11</link><guid>http://ayende.com/3650/an-optimization-story#comment11</guid><pubDate>Thu, 16 Oct 2008 06:27:04 GMT</pubDate></item><item><title>Albert Araalie commented on An optimization story</title><description>Memory is pretty easy to come by and the caching (into memory) process is straight forward. I guess disk based caching might be useful in cases where your web application needs to survive restarts or you need to *share* data across domains.
</description><link>http://ayende.com/3650/an-optimization-story#comment10</link><guid>http://ayende.com/3650/an-optimization-story#comment10</guid><pubDate>Wed, 15 Oct 2008 21:35:33 GMT</pubDate></item><item><title>Ayende Rahien commented on An optimization story</title><description>Albert,
  
It really depends on the data size and what you want to do with it.
  
Memory is cheap, and you can put a _lot_ into memory without feeling any sort of pain.
  
Implemeting disk based caching put you in a pretty bad position in terms of the cost of managing that.
</description><link>http://ayende.com/3650/an-optimization-story#comment9</link><guid>http://ayende.com/3650/an-optimization-story#comment9</guid><pubDate>Wed, 15 Oct 2008 21:04:46 GMT</pubDate></item><item><title>Ayende Rahien commented on An optimization story</title><description>Scott,
  
Caching blindly is possible, but it isn't really appropriate for many scenarios.
  
For example, in this case, just the cost of making a single call to calculate the data for the first time is higher than the cost of loading the data and precalculating everything.
  
  
</description><link>http://ayende.com/3650/an-optimization-story#comment8</link><guid>http://ayende.com/3650/an-optimization-story#comment8</guid><pubDate>Wed, 15 Oct 2008 21:02:54 GMT</pubDate></item><item><title>Scott White commented on An optimization story</title><description>Spring let's you use [Cache] attributes I would have used something similar here at my Service layer probably.  I'm sure it could be implemented similarly with Castle.
  
  
</description><link>http://ayende.com/3650/an-optimization-story#comment7</link><guid>http://ayende.com/3650/an-optimization-story#comment7</guid><pubDate>Wed, 15 Oct 2008 19:28:30 GMT</pubDate></item><item><title>Stephen commented on An optimization story</title><description>Albert, I actually have been working recently on implementing a good disk caching pattern for asp.net, not so much the database - but caching resulting html. The caching is not so hard, but its more about designing how dependencies can be wired up, and how they can survive over process restarts.. it lead me down the road of being able to generate what is basically an entity tag or hash, or the current state of the dependent services.. and reinforcing and invalidating this when accessing the cached outputs.. thats where I stopped however, I ended up becoming very busy and didn't find the time to architect a solution.
  
  
Caching is a really interest area in architecting solutions, as in this blog case, the results can be really rewarding when you make something a ton faster by intelligently handling data.
</description><link>http://ayende.com/3650/an-optimization-story#comment6</link><guid>http://ayende.com/3650/an-optimization-story#comment6</guid><pubDate>Wed, 15 Oct 2008 18:49:43 GMT</pubDate></item><item><title>Jon Skeet commented on An optimization story</title><description>I had a similar-sounding situation. I had to make many lookups (which couldn't be predicted ahead of time) into a 100,000,000 row table. Fortunately, the nature of this table meant I was able to store it in 100MB of RAM. The performance difference was in the tens of thousands of percent, I think :)
</description><link>http://ayende.com/3650/an-optimization-story#comment5</link><guid>http://ayende.com/3650/an-optimization-story#comment5</guid><pubDate>Wed, 15 Oct 2008 18:42:12 GMT</pubDate></item><item><title>Albert Araalie commented on An optimization story</title><description>Do you think it is advisable to try and implement a disk-output cache, where you read in data from the database and write it to a temporary files and then have subsequent calls access the data on the disk? I'm assuming the dataset returned is is pretty "large" for the asp.net cache or memory.
  
  
Just asking out...loud.....
  
  
</description><link>http://ayende.com/3650/an-optimization-story#comment4</link><guid>http://ayende.com/3650/an-optimization-story#comment4</guid><pubDate>Wed, 15 Oct 2008 12:02:16 GMT</pubDate></item><item><title>Virju commented on An optimization story</title><description>I just saw your day 1 blog poster and i am looking at this now ... you're very much imporved in your writing skills .. especially in vocub. and narration .. keep it up dude .. hard work never fails .. great post 
</description><link>http://ayende.com/3650/an-optimization-story#comment3</link><guid>http://ayende.com/3650/an-optimization-story#comment3</guid><pubDate>Wed, 15 Oct 2008 07:35:09 GMT</pubDate></item><item><title>Ayende Rahien commented on An optimization story</title><description>Imagine a tree structure that you need to query, now imagine that it is a sparse tree, and you need to do fixups for the tree
</description><link>http://ayende.com/3650/an-optimization-story#comment2</link><guid>http://ayende.com/3650/an-optimization-story#comment2</guid><pubDate>Wed, 15 Oct 2008 07:18:01 GMT</pubDate></item><item><title>Andrey Shchekin commented on An optimization story</title><description>Could you show a requirement that can not be expressed in SQL? This seems like an interesting challenge (I can think of several really cumbersome things, but only one inexpressible in a good way ).
</description><link>http://ayende.com/3650/an-optimization-story#comment1</link><guid>http://ayende.com/3650/an-optimization-story#comment1</guid><pubDate>Wed, 15 Oct 2008 07:11:04 GMT</pubDate></item></channel></rss>