<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

В начале курса у нас будет только идея, а в конце готовый продукт, который можно использовать в практических целях.

В рамках упражнений курса Вы параллельно со мной будете создавать свою большую программу на Java, что даст Вам необходимую практику, после которой для Вас уже не будет разницы, какого размера создавать программы.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Кеширование на сайте
30.05.2013 15:13:44 Кеширование на сайте Сообщение #1
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

Здравствуйте, Михаил. Нужно сделать на сайте кеширование, при чем, чтобы кешировались не только обычные страницы, но и с get - параметрами. Обычное кеширование не подошло.
Профиль Ответить
30.05.2013 18:04:31 Кеширование на сайте Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Есть GET или нет - не важно: http://myrusakov.ru/php-create-cache.html
Единственное, что надо будет изменить - это имена файлов. То есть, не page.html, а page_a_5_b_7.html, соответствующая page.php?a=5&b=7
Профиль Ответить
14.06.2013 19:47:48 Кеширование на сайте Сообщение #3
razor2211

razor2211

Освоившийся

Освоившийся

Дата регистрации:
06.05.2013 07:38:16

Сообщений: 26

Для кэширования всегда использую данный класс.
<?php
class Cache {
private $cache, $modif, $cachefile;
private $path = '/cache/';
private $timecache = 300;

public function __construct($filename) {
$this->cachefile = $_SERVER['DOCUMENT_ROOT'].$this->path. md5($filename).'.cache';
$this->modif = time()-@filemtime($this->cachefile);
}

public function cacheExists() {
if(!file_exists($this->cachefile)) return false;
if($this->modif < $this->timecache) return false;
return true;
}
public function cacheGet() {
return file_get_contents($this->cachefile);
}
public function cacheInit() {
ob_start();
}
public function cacheClean() {
ob_end_clean();
}
public function cacheOutput() {
$this->cache = ob_get_contents();
}
public function cacheRewrite() {
file_put_contents($this->cachefile, $this->cache);
echo $this->cache;
}
}
?>


Пример использования:

require_once 'includes/cache_class.php';
$cache = new Cache($_SERVER['REQUEST_URI']);
if($cache->cacheExists()) {
echo $cache->cacheGet();
exit;
}
$cache->cacheInit();

// Тут обычная генерация страницы

$cache->cacheOutput();
$cache->cacheClean();
$cache->cacheRewrite();


Ну как то так
Профиль Ответить
14.06.2013 19:49:58 Кеширование на сайте Сообщение #4
razor2211

razor2211

Освоившийся

Освоившийся

Дата регистрации:
06.05.2013 07:38:16

Сообщений: 26

Забыл уточнить, $path - путь к папке с кэшами (обязательно должен начинаться и заканчиваться слэшами), $timecache - время в секундах, после которого кэш считается устаревшим
Профиль Ответить