Changeset 92907 in spip-zone


Ignore:
Timestamp:
Nov 14, 2015, 10:41:21 AM (4 years ago)
Author:
fil@…
Message:

en cas de forte charge, preferer envoyer un vieux cache

Location:
_plugins_/memoization
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/memoization/plugin.xml

    r92497 r92907  
    99        <auteur>Fil</auteur>
    1010        <licence>&#169; 2009-2015 - GNU/LGPL - MIT</licence>
    11         <version>1.5.9</version>
     11        <version>1.6.0</version>
    1212        <etat>stable</etat>
    1313        <description>
  • _plugins_/memoization/public/cacher.php

    r92497 r92907  
    144144        else if ((!_IS_BOT AND $date + $duree < $now)
    145145                # le cache est anterieur a la derniere purge : l'ignorer, meme pour les bots
    146           OR $date<$cache_mark)
    147                 return _IS_BOT?-1:1;
    148         else
     146          OR $date<$cache_mark) {
     147                if (_IS_BOT) return -1;
     148               
     149                // si la charge est trop elevee on accepte de prendre un vieux cache
     150                $load = function_exists('sys_getloadavg') ? sys_getloadavg() : array(0);
     151                if ($load[0]>20) {
     152                        spip_log('load eleve ('. intval($load[0]).'), utilisation du cache pour '.var_export($page['source'],true).' sur '.self(), 'debug');
     153                        return 0;
     154                }
     155
     156                // sinon on calcule
     157                return 1;
     158        } else {
    149159                return 0;
     160        }
    150161}
    151162
Note: See TracChangeset for help on using the changeset viewer.