gsnzone
23.10.2012 - 23:35
Привет всем. Такой вопрос. У меня есть страницы, которые делает большие запросы бд (и их много). Поэтому я сделал кеширование для этих страниц. то есть результат от запроса помещается в php файл (размер файла достигает 100-300кб, тут и html-теги, и результаты запросов вместе), потом при каждом вызове страницы считывается не из бд, а из этого файла. Я думаю - что быстрее и производительнее - помещать результат в файл а потом его через include подключать, или эти же данные заносить в mysql бд? в таком случае один раз будет много запросов для прокеширования, а потом только один. надеюсь, ясно изложил)) жду вашего мнения, стоит ли переделывать.
Игорь_Vasinsky
24.10.2012 - 00:51
вообще зависит насколько разносторонне запросы.
например если это динамическое построение страниц - то можно всю страницу по REQUEST_URI брать, предварительно очистив от всяких SESSION в урл, иначе - копий кэша одной страницы будет многократно.
есть так же Memcached
я когда столкнулся с таким вопросом - оисал вариант реализации
http://phpforum.ru/index.php?showtopic=609...%EE%E2%EE%E3%EE
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
gsnzone
24.10.2012 - 01:17
в моем случае - кеш только некоторых страниц сайта. их штук 10. мне не нужно "глобальное" кеширование - только в пределах десятка страниц. скрипт у меня есть свой, вопрос просто в том, что лучше - файловый кеш в .php файл или в mysql его загнать.
__
вопрос даже можно еще упростить - большая ли нагрузка получится, если в бд будет храниться 200кб данных и каждый раз эти 200кб будут оттуда выгружаться ?
Игорь_Vasinsky
24.10.2012 - 01:24
есть мнение - что файловый быстрее.
и обычно кешируют сами запросы или выборку, а не весь контент с упаковкой в БД, по крайней мере я не слышал.
при этом же дополнительная обработка данных в БД и при выводе, а это доп ресурсы
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
gsnzone
24.10.2012 - 01:37
что ж, думаю - файловую все же придется оставить
Игорь_Vasinsky
24.10.2012 - 01:42
чтобы снизить размер файла кэша - чисти html от хлама - знаков переноса, табыляции, ненужных пробелов и прочее. - но аккуратней с JS
так же для html файлов можно применить одну из степени сжатия через ob_start
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
VELIK505
24.10.2012 - 01:50
Зачем html сохранять в файл? html кеширует nginx
Получил результат от запроса положил его в хранилище любое будь то memcache или redis или твой файловый кеш и оттуда раздвай результаты запросов. Кешировать html, css вообщем всё что касаеться статики это прошлый век. За тебя это делает nginx + ещё сжимает её на лету
gsnzone
24.10.2012 - 01:54
надо попробовать с этим разобраться
VELIK505
24.10.2012 - 01:56
Максимум что ты можешь сделать c html, css, javascript это завернуть их в 1 строку через ob_start и то этим ты поможешь не веб серверу а браузеру быстрее отобразить страницу
Игорь_Vasinsky
24.10.2012 - 02:05
VELIK505
ну слышал я такие предложения
тока ни как не въеду - как мне хранить ассоциативный многомерный массив в файловом хэше
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Игорь_Vasinsky
24.10.2012 - 02:05
в сереализованном или json, на кряйняк xml
туплю))
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.