https://www.redmine.org/https://www.redmine.org/favicon.ico?16793021292009-12-28T09:11:52ZRedmineRedmine - Feature #4482: Cache textile renderinghttps://www.redmine.org/issues/4482?journal_id=133122009-12-28T09:11:52ZJean-Philippe Langjp_lang@yahoo.fr
<ul><li><strong>Target version</strong> deleted (<del><i>1.0.0 (RC)</i></del>)</li></ul><p>For most pages, Textile rendering is not an issue.</p>
<p>For example, <strong>turning off</strong> textile makes the rendering of average tickets only 10~15% faster depending of their text size. If you add the AR overhead to retrieve the cached HTML from the database, there will only be a small improvement.<br />Of course, this would be a bit more useful on big wiki pages but the database is definitely not the most effective way to cache textile rendering.</p> Redmine - Feature #4482: Cache textile renderinghttps://www.redmine.org/issues/4482?journal_id=133722009-12-29T23:23:33ZEric Davis
<ul></ul><p>Jean-Philippe Lang wrote:</p>
<blockquote>
<p>For most pages, Textile rendering is not an issue.</p>
</blockquote>
<p>I don't know if I agree with that. The statistics I'm getting are showing about 70% of the time being spent in the page rendering. We might need to do some profiling to make sure.</p>
<blockquote>
<p>but the database is definitely not the most effective way to cache textile rendering.</p>
</blockquote>
<p>Where would you propose caching to? I could think of four places but they would be deployment specific (except the database):</p>
<ol>
<li>to disk - needs a writable filesystem</li>
<li>to memcached - needs a memcache server setup</li>
<li>to memory - could cause the memory size of Redmine to grow as the cache grows</li>
<li>to database - would increase the size of the database and the data returned from queries</li>
</ol> Redmine - Feature #4482: Cache textile renderinghttps://www.redmine.org/issues/4482?journal_id=134792010-01-09T18:58:46ZJean-Philippe Langjp_lang@yahoo.fr
<ul></ul><p>Eric Davis wrote:</p>
<blockquote><blockquote>
<p>For most pages, Textile rendering is not an issue.</p>
</blockquote>
<p>I don't know if I agree with that. The statistics I'm getting are showing about 70% of the time being spent in the page rendering. We might need to do some profiling to make sure.</p>
</blockquote>
<p>It doesn't mean that 70% of the time is spent in Textile. Rendering views is slow.</p>
<blockquote><blockquote>
<p>but the database is definitely not the most effective way to cache textile rendering.</p>
</blockquote>
<p>Where would you propose caching to? I could think of four places but they would be deployment specific (except the database):</p>
<ol>
<li>to disk - needs a writable filesystem</li>
<li>to memcached - needs a memcache server setup</li>
<li>to memory - could cause the memory size of Redmine to grow as the cache grows</li>
<li>to database - would increase the size of the database and the data returned from queries</li>
</ol>
</blockquote>
<p>We can simply use Rails.cache. It uses MemoryStore by default but users can configure it to use whatever they want.</p> Redmine - Feature #4482: Cache textile renderinghttps://www.redmine.org/issues/4482?journal_id=136002010-01-15T17:05:41ZEric Davis
<ul></ul><p>Jean-Philippe Lang wrote:</p>
<blockquote>
<p>It doesn't mean that 70% of the time is spent in Textile. Rendering views is slow.</p>
</blockquote>
<p>Correct, that's why some profiling will be needed.</p>
<blockquote>
<p>We can simply use Rails.cache. It uses MemoryStore by default but users can configure it to use whatever they want.</p>
</blockquote>
<p>That's probably the best if we pick a good generic default. I've done some work with Rails.cache with memcached and MemoryStore and saw some performance improvements.</p> Redmine - Feature #4482: Cache textile renderinghttps://www.redmine.org/issues/4482?journal_id=140472010-02-06T10:33:52ZJean-Philippe Langjp_lang@yahoo.fr
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Closed</i></li><li><strong>Target version</strong> set to <i>1.0.0 (RC)</i></li><li><strong>Resolution</strong> set to <i>Fixed</i></li></ul><p>Feature added in <a class="changeset" title="Adds a setting to cache textile rendering (off by default). * it uses ActionController cache stor..." href="https://www.redmine.org/projects/redmine/repository/svn/revisions/3372">r3372</a>, see commit log for details.<br />As far as I can tell, it offers a great boost for large wiki pages.</p>