За последние 24 часа нас посетили 18529 программистов и 1656 роботов. Сейчас ищут 897 программистов ...

zlib - сжатие данных или как узнать сколько реально сжалось?

Тема в разделе "PHP для новичков", создана пользователем kkk, 23 мар 2010.

  1. kkk

    kkk Активный пользователь

    С нами с:
    23 июн 2009
    Сообщения:
    14
    Симпатии:
    0
    Здравствуйте.
    Хостинг masterhost.
    Поддерживаемые на нашем хостинге функции:
    Код (Text):
    1. zlib
    .

    Код (Text):
    1. phpinfo();
    zlib

    ZLib Support enabled
    Stream Wrapper support compress.zlib://
    Stream Filter support zlib.inflate, zlib.deflate
    Compiled Version 1.2.3
    Linked Version 1.2.3

    Directive Local Value Master Value
    zlib.output_compression On Off
    zlib.output_compression_level 5 -1
    zlib.output_handler no value no value



    в header.php -
    Код (Text):
    1.    
    2. ini_set( 'zlib.output_compression', '1' );
    3. ini_set( 'zlib.output_compression_level', '9' );
    в index.php -
    Код (Text):
    1.     require_once ('header.php');
    Вроде бы все по инструкции.

    Но чего то не ускоряется...

    Как продиагностировать настройку сжатия?

    Заранее большое спасибо.
     
  2. engager

    engager Активный пользователь

    С нами с:
    21 янв 2009
    Сообщения:
    1.106
    Симпатии:
    1
    а что должно ускориться?
    имхо, сжатие эффективно, когда предполагается генерация страниц более мегабайта (типа как fishki.net)
    у тебя какой объем страниц?
     
  3. kkk

    kkk Активный пользователь

    С нами с:
    23 июн 2009
    Сообщения:
    14
    Симпатии:
    0
    Размер страницы = 3,30 МБ (3 465 981 байт);
    Скорость mysql-запроса, откуда беруться данные = 0.0043 сек.
    Вывод страницы > 25 сек.



    Может я как то не так вывожу...
     
  4. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    это как? Кстати, phpinfo чихать хотел на все эти ini_set если только они не стоят в том же файле, что и сам phpinfo();

    интересно, это время генерации или отрисовка хтмля и подгрузка данных?
     
  5. kkk

    kkk Активный пользователь

    С нами с:
    23 июн 2009
    Сообщения:
    14
    Симпатии:
    0
    Короче говоря, черт с ним со сжатием...

    сейчас протестил у меня цикл все время один отнимает....

    Можно такой вопрос задать. Пусть есть главная таблица:
    TableMain - около 5000 строк.
    в ней есть много полей - 4 из них - это int(11) - идентификаторы - у идентификаторов есть расшифровка значения, т.е. имя.
    Например, идентификатор 3 - 'Test' - вся расшифровка находится в других таблицах. Т.е. 4 поля(4 типа идентификаторов) - 4 таблицы.
    Т.е. в главной таблице я храню и записываю в нее идентификаторы.

    Дак вот в этом цикле при прохождении по 5000 записям - каждый раз в цикле ещё делается получается 4 проходки по таблицам, расшифрующим идентификаторы(это для вывода конечному пользователю)...

    Можно как-нибудь оптимизировать, или хранение идентификаторов в основной таблице плохой тон?
     
  6. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    JOIN вместо цикла
     
  7. kkk

    kkk Активный пользователь

    С нами с:
    23 июн 2009
    Сообщения:
    14
    Симпатии:
    0
    такс...попробую...спасибо.
     
  8. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    ух ты, как проблематика резко меняется
     
  9. kkk

    kkk Активный пользователь

    С нами с:
    23 июн 2009
    Сообщения:
    14
    Симпатии:
    0
    дело ещё в чем.
    в главной таблице у меня два поля, которые я в итоге вывожу "как одно", т.е., например,
    Pole1 Pole2
    0 1
    1 0


    Дак вот если Pole1=0, то расшифровку нужно взять из одной таблицы и наоборот, если Pole1 не равно нулю - то из другой таблицы...

    в join-e как-нибудь можно условие создать?
     
  10. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Пффф, в теории можно, но - ответ нет.

    Эти другие таблицы нужны одновременно? Или по-очереди?
    Если второе - то можно динамически собирать запрос.
    Если первое - то только фильтровать, причем это проще сделать на php.