<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Sat, 25 May 2013 01:14:31 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Procurios Blog: Fragment Cache - an introduction / PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/14637</guid>
      <link>http://www.phpdeveloper.org/news/14637</link>
      <description><![CDATA[<p>
On the Procurios blog today there's a new post talking about a different sort of way to optimize your site's perfomance - <a href="http://techblog.procurios.nl/k/n618/news/view/41384/14863/Fragment-Cache---an-introduction--PHP.html">fragment caching</a>.
</p>
<blockquote>
So if <a href="http://en.wikipedia.org/wiki/Web_cache">web caching</a> is not an option, what is the next best thing? To cache parts of the page, put them together, and serve that. You can use a caching tool for this, like <a href="http://en.wikipedia.org/wiki/Memcache">Memcached</a>. There's only one catch: the cached content may need to change when any of the things it depends on changes: data, code, user input, and the like. You can pass an expiration time when you add your content to Memcache. This will cause your cache to live only a certain amount of time and then expire. Nice, but we can do better.
</blockquote>
<p>
The method he talks about involves expiring the cached data when the dynamic data it comes from has expired rather than setting an expiration time on the data itself. Each time the data its pulled/rendered, the cached data is checked and is updated if the need is there. You're not so much checking for a valid cache as you are forcing an update when needed. There are some side effects mentioned like more database load and increased server load because of the data generation each time.
</p>
<p>
Code examples are included in the post that use <a href="http://techblog.procurios.nl/l/en/library/download/41673">this caching library</a> to get the job done. You can also see how it works in the <a href="http://techblog.procurios.nl/l/en/library/download/41675">test file</a> using that library.
</p>]]></description>
      <pubDate>Fri, 11 Jun 2010 08:39:21 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Timothy Boronczyk's Blog: Paste Ninja (a new kind of pastebin)]]></title>
      <guid>http://www.phpdeveloper.org/news/11525</guid>
      <link>http://www.phpdeveloper.org/news/11525</link>
      <description><![CDATA[<p>
<i>Timothy Boronczyk</i> has <a href="http://zaemis.blogspot.com/2008/12/dialog-and-paste-ninja.html">posted about</a> a new site/service he's created with PHP - <a href="http://pasteninja.com">Paste Ninja</a>. He details it more in the post:
</p>
<blockquote>
<p>
Paste Ninja is a pastebin application that lets you to share code snippets with others. Instead of flooding an IRC channel or your Instant Messenger conversations with lines of source code, you can paste it online for public viewing.
</p>
<p>
The world probably doesn't need another pastebin app, either, but there are several features in store that other pastebins don't have.
</p>
</blockquote>
<p>
Features for <a href="http://pasteninja.com">Paste Ninja</a> include:
</p>
<ul>
<li>the ability to create threaded pastes, 
<li>set an expiration date for the entry, 
<li>set a password to protect the code, 
<li>see how many times its been viewed 
<li>set the comments on a line-by-line basis
<li>and - a very cool feature - submitting it via an email account versus just through the site.
</p>]]></description>
      <pubDate>Mon, 08 Dec 2008 11:19:37 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[CentreSource Blog: PHP Session Lifetime - an Adventure]]></title>
      <guid>http://www.phpdeveloper.org/news/5442</guid>
      <link>http://www.phpdeveloper.org/news/5442</link>
      <description><![CDATA[<p>
From the CentreBlog today, there's an <a href="http://blog.centresource.com/2006/05/23/php-session-lifetime-an-adventure/#more-484">in-depth look</a> at sessions as discovered by resolving a problem of prematurely expiring sessions on their apps.
</p>
<quote>
<i>
It started about two weeks ago, with no discernable changes to our configuration that could be responsible. So to understand what was necessary to track down this problem, we have to explore a little bit about how PHP session data storage and expiration works.
</i>
</quote>
<p>
They <a href="http://blog.centresource.com/2006/05/23/php-session-lifetime-an-adventure/#more-484">share</a> some of their discoveries, including:
<ul>
<li>the session.save_path setting in the php.ini tells the scripts where the sessions go
<li>garbage collection in PHP checks for sessions older than the session.gc_maxlifetime setting to remove
<li>but sessions were still expiring too early
</ul>
They finally started to Google for some answers and discovered that the problem wasn't in the default PHP configuration, the real issue was other software that overrode this php.ini value inside each execution. The result was that a script with the setting of 45 minutes would remove all sessions untouched for more than 45 minutes - regardless if they belonged to other software or not.
</p>]]></description>
      <pubDate>Wed, 24 May 2006 17:49:15 -0500</pubDate>
    </item>
  </channel>
</rss>
