Форум русской поддержки Joomla!® CMS
25.04.2017, 05:03:18 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Оптимизация функции кэширования

 (Прочитано 13607 раз)
0 Пользователей и 1 Гость смотрят эту тему.
PTTVDesign
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 11


interbuyer


« : 09.12.2007, 11:44:49 »

файл \includes\Cache\Lite.php
примерно 553 строка

function _write($data)
   {
      $fp = @fopen($this->_file, "wb");
      if ($fp) {
      
        $data = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $data);// remove comments
        $data = str_replace(array("\r\n", "\r", "\n", "\t", '  '), '', $data);// remove tabs, spaces, newlines, etc.
        $data = str_replace('{ ', '{', $data);// remove unnecessary spaces.
        $data = str_replace(' }', '}', $data);
        $data = str_replace('; ', ';', $data);
        $data = str_replace(', ', ',', $data);
        $data = str_replace(' {', '{', $data);
        $data = str_replace('} ', '}', $data);
        $data = str_replace(': ', ':', $data);
        $data = str_replace(' ,', ',', $data);
        $data = str_replace(' ;', ';', $data);
        $data = str_replace(';}', '}', $data);
       
      
         if ($this->_fileLocking) @flock($fp, LOCK_EX);
         if ($this->_readControl) {
            @fwrite($fp, $this->_hash($data, $this->_readControlType), 32);
         }
         $len = strlen($data);
         @fwrite($fp, $data, $len);
         if ($this->_fileLocking) @flock($fp, LOCK_UN);
         @fclose($fp);
         return true;
      }
      $this->raiseError('Cache_Lite : Unable to write cache !', -1);
      return false;
   }

позволяет избавиться от мелкого мусора в кэш файлах
« Последнее редактирование: 09.12.2007, 16:45:01 от PTTVDesign » Записан
 
archer1981
Давно я тут
****

Репутация: +13/-0
Offline Offline

Пол: Мужской
Сообщений: 260



« Ответ #1 : 09.12.2007, 18:45:45 »

А можно поподробнее о "мелком мусоре"?
Записан
PTTVDesign
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 11


interbuyer


« Ответ #2 : 09.12.2007, 19:15:54 »

А можно поподробнее о "мелком мусоре"?
лишние пробелы, табуляции и тд
запусти и сравни просто размеры
Записан
PTTVDesign
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 11


interbuyer


« Ответ #3 : 09.12.2007, 23:27:40 »

index page HONDA24.RU
с применением чистки 11,391 Kb
без чистки 12,967 Kb
Записан
PTTVDesign
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 11


interbuyer


« Ответ #4 : 12.12.2007, 16:14:13 »

проблема данного решения - не совместимость с JavaScript, так как перенос строки убьет скрипты встроенные к примеру в закэшированных файлах
Записан
boston
Joostina
*****

Репутация: +222/-3
Offline Offline

Пол: Мужской
Сообщений: 499



« Ответ #5 : 12.12.2007, 16:22:39 »

PTTVDesign, тоже встречался с таким, где-то в строке \r\n", "\r", "\n", "\t",  надо ковырять...
Записан
Physicist
Support Team
*****

Репутация: +185/-0
Offline Offline

Пол: Мужской
Сообщений: 963


Рябов Денис


« Ответ #6 : 09.03.2008, 22:50:22 »

Нельзя вносить изменения в функцию Cache_Lite::_write : http://joomlaforum.ru/index.php/topic,29266.msg171489.html#msg171489
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet