Автор будет очень признателен, если Вы кликнете по одной из белых ссылок выше.
Вам это ничего не стоит, а автору сайта будет приятно ;)
Найдено страниц: 32 [показано 10]
Файлы vs базы данных.
Степень соответствия запросу: 43,79%
Фрагменты текста поста : ... Итак, последовательность действий модуля сбора статистики Lasto-блога примерно такова: при обращении серфера к любой странице сайта запускается один и тот же скрипт, который должен собирать статистическую информацию: кто пришел (серфер или бот), откуда он пришел (сайт-источник), куда он пришел (страница нашего сайта) и т... ... Вся эта информация сохраняется в файл и позже, на ее основе, генерируются графики посещаемости по дням, «хит-парад» страниц сайта, сайтов-источников трафика и используемых для просмотра броузеров и прочая мега-полезная отчетность... ... db — данные о хитах (метка времени хита, IP-адрес источника, User-Agent клиента, хост источника, страница сайта к которой обратился клиент)... ... Кстати, анализируя этот файл можно увидеть, какие страницы сайта проиндексированы какими поисковыми системами (были посещены поисковыми ботами) и когда это произошло... ... Скрипт считывает в память ВЕСЬ файл статистики, не взирая на размер ( если посещаемость высокая или статистика собирается за большой срок, то это могут быть десятки или даже сотни мегабайт )... ... Язык PHP содержит пару функций ( serialize и unserialize ), предназначенных для преобразования массива в строку и обратно... ... Первая склеивает все элементы массива (разделяя их спец-символами с технической информацией) и возвращает полученную текстовую строку... ... Вторая делает обратное преобразование из строки в массив... ... Итак, скрипт загружает текстовый файл и преобразует его в массив... ... она требует перебора части (а в худшем случае всех ) элементов массива и для каждого из них необходимо сделать сравнение достаточно длинных текстовых строк... ... com||вася пупкин'] В этом случае для сравнения строк будут использованы встроенные средства языка (библиотечные функции), которые работают гораздо быстрее самих PHP-шных скриптов, но все равно операцию эту быстрой не назовешь... ... Серилизация (склейка элементов массива в строку) и перезапись (опять же) ВСЕГО файла статистики... ... тут затронута обработка данных только из одного «раздела» статистики (а ведь скрипт еще должен скорректировать данные и в остальных), не описан блок, который проверяет доступность сайта для данного юзер-агента и хоста-источника (а он жрет времени тоже немало), не учтены потери на выделение/освобождение памяти и копирование целых веток массива, если автор решил (для упрощения программирования) отделить часть массива например так: Пример кода $as = $ar['allsein']... ... Главное то, что ПРИ ЛЮБОМ ХИТЕ (даже переходе серфера с одной страницы сайта на другую) происходят ВСЕ описанные операции — чтение, разбор, поиск, склейка, запись и выполняются они над ВСЕМ содержимым файла статистики... ... Но, в отличии от ранее рассмотренного варианта работы файлового движка, здесь размер этих файлов в десятки раз меньше... ... размер записи в них фиксированный... ... для перехода к нужной записи достаточно просто размер заголовка файла добавить к произведению размера записи в байтах на номер записи и получаем точное смещение от начала файла... ... В нашем случае размер записи (для третьей таблицы) составляет 12 байт , ведь там только три поля — Q_ID , Date и Hits , каждое из которых представляет собой 32-битное число и занимает 4 байта... ... Естественно, размер записей в первых двух таблицах (а их нам тоже придется загружать в процессе поиска) немного больше, но все равно он измеряется десятками байт , а не мега байт... ... Поскольку записи в нашей третьей таблице (в данном случае) также будут иметь фиксированную длину, то поиск нужной внутри файла также сведется к одному сложению и одному умножению, а уж прочесть и снова записать на тоже место 12 байт — милисекундное дело (даже с учетом автоматической коррекции индексного файла)... ... Да еще про кэширование вспомним :-) Кстати, если ваш сайт достаточно посещаем, то файл статистики будет расти как на дрожжах и каждое обращение к скрипту будет вызывать чтение/парсинг/поиск/сохранение всех этих десятков мегабайт, а при использовании БД при любом количестве посетителей нам все так же будет нужно читать всего несколько сотен байт (три записи из таблиц), а записать - только 12 байт... Подробнее: http://fit-media.com/post_1222679684.htmlОптимизация PHP-кода
Степень соответствия запросу: 22,05%
Фрагменты текста поста : ... Передавайте в echo несколько параметров, вместо использования конкатенацию строк... ... Если функции замены строк, может принимать в качестве аргументов как массивы, так и одиночные символы, и если ваш список аргументов не слишком длинный, подумайте над тем, чтобы записать несколько одинаковых выражений замены, проходя один символ за раз, вместо одной строки кода, которая принимает массив поиска и замены Лучше использовать конструкции else if , чем несколько конструкций if... ... Ваши строки, определённые при помощи апострофа, а не двойной кавычки, будут интерпретироваться чуть быстрее, т... ... Конечно, вы можете использовать это только тогда, когда в вашей строке нет переменных... ... Строки, разделённые запятыми, выводятся быстрее, чем строки, разделённые точкой... ... Примечание: это работает только с функцией echo , которая может принимать несколько строк в качестве аргументов... ... При работе со строками, для определения длины строки, вы, разумеется, захотите использовать функцию strlen()... ... Эта функция работает очень быстро, ведь она не выполняет каких-либо вычислений, а лишь возвращает уже известную длину строки, доступную в zval-структуре (внутренняя структура C, используемая при работе с переменными в PHP )... ... функция, она будет работать медленно за счёт вызова некоторых операций, таких как приведение строки в нижний регистр и поиска в хэш-таблице, только после которых будут выполнены основные действия функции... ... За счёт этого isset() не имеет практически никаких накладных расходов на определение длины строки... Подробнее: http://fit-media.com/post_1207831883.htmlMySQL: MyISAM хотят заменить на новый движок Maria
Степень соответствия запросу: 18,18%
Фрагменты текста поста : ... Движок Maria - это расширенная версия MyISAM, которая поддерживает весь основной функционал MyISAM и в дополнение к этому предлагает: поддержку восстановления данных после сбоев (data auto-recovery, crash safe), полное логирование (включая операции CREATE, DROP, RENAME и TRUNCATE) и новый формат строк PAGE... ... INSERT и INSERT (множество строк), ALTER TABLE LOAD INDEX может пропускать неиспользуемые индексные блоки Новый блочный формат строк, в котором данные хранятся ввиде страниц При использовании блочного формата строк (выбираемого теперь по умолчанию) строковые данные могут кешироваться Блочные тесты большинства элементов Поддержка как отказоустойчивых (crash safe, транзакциональных) так и нетранзакциональных таблиц... ... (Нетранзакцональные таблицы не логируются и для строк используется меньше места): CREATE TABLE foo (... ... Не поддерживается INSERT DELAYED Не поддерживается кеширование составных ключей Устранение недостатков до следующих релизов Хранение очень малых строк Не поддерживаются MERGE таблицы Различия, которые вероятно не будут устранены Страницы данных в блоковом формате увеличивают размеры: 10 байт на страницу и 5 байт на строки... ... Транзакции и поддержка конкурирующих записей приведут к увеличению: 7 байт на новые строки, 14 байт для удаленных строк Отсутствие внешнего блокирования (MyISAM имеет внешнее блокирование, но оно редко используется) Использование одинакового размера страниц для индекса и данных... ... MyISAM поддерживает различные размеры страниц для индексов Индексный номер требует один экстра байт на индексную страницу Не поддерживается внутренний MySQL RAID (выключен и в MyISAM) Минимальный размер файла данных формата PAGE 16К (со страницей на 8K) Обзор Maria:... Подробнее: http://fit-media.com/post_1202730586.htmlВсе ли CMS одинаково полезны?
Степень соответствия запросу: 6,83%
Фрагменты текста поста : ... Ибо все изыскания, все идеи, решения, принятые на основе анализа статистики посещаемости своих ресурсов, прибыли и убытков, все то ценное, что только может посетить несчастную опухшую голову мани-мейкера в конечном итоге выливается в одно и тоже - изменения, производимые на подконтрольных сайтах... ... Вот тут на первое место и выходят всякие CMS (Content Management System - системы управления содержимым сайта)... ... Размеры тоже колеблются в очень широких пределах... ... Все, что он делает - это просто прикручивает кусок HTML-ного шаблона к пользовательскому контенту, получая таким образом готовую страницу сайта... ... Давно известно, что искалки совершенно по-разному относятся к статическим страницам сайта и к динамическому (изменяющемуся) контенту... ... Для обычного информационного сайта это, возможно, и не очень важно, но для настоящего мани-мэйкера попадание в топ серпа искалок - первоочередная причина ночной мигрени... ... Второй недостаток - размеры... ... А если учесть, что рядовому мани-мейкеру нужно иметь пару десятков сателлитов или доров - относительно небольших сайтов, полный размер контента которых не переваливает за 1-2 мегабайта, то становится понятно, что разворачивать такого "монстра" ради пары мегабайт реальной информации совсем не хочется... ... А потому скорость - важная составляющая любого манимейкерского сайта... ... Смотрите сами, для сайта, который будет содержать 4-5 сотен страниц совсем не обязательно покупать полу-гектарный хостинг... ... " Результат - переплата за заведомо лишнее место на сервере только из-за того, что мотор сайта не может обойтись без MySQL... ... Может я чего-то упустил, но ни один из виденных мной движков не давал сколько-нибудь полной (и полезной) статистики работы сайта... ... Максимум, что доводилось встречать в CMS - ограничение на доступ к некоторым частям сайта для определенных групп пользователей... ... Например, блокирование частичного или полного выкачивания сайта с помощью разных даунлоадеров, противодействие попыткам автоматического воровства информации другими CMS'ами и т... ... И вот, что я хочу от него добиться: Максимальная оптимизация под поисковые системы ("управляемое" расположение контента в странице, облегченный дизайн, генерация псевдо-статических страниц) Минимальные размеры как движка, так и хранимых на сервере данных... ... Есть ядро (основа движка) и есть набор абсолютно независимых друг от друга модулей, которые можно отключать/подключать по мере необходимости, уменьшая размер CMS и увеличивая скорость ее работы... Подробнее: http://fit-media.com/post_1200405197.htmlПользовательский интерфейс
Степень соответствия запросу: 3,93%
Фрагменты текста поста : ... В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями... ... То есть из всего разнообразия изобразительных средств - формы, размера, цвета, текста - в кнопках диалогов используется только текст... ... Считается хорошим тоном иметь кнопки одного размера и аккуратно расположенные, чтобы вынудить пользователя каждый раз прочитывать текст... ... В них кнопки разбросаны в кажущемся беспорядке, имеют разный размер, большинство обозначено пиктограммами, а текст остальных очень короток (например, Play) и тоже скорее играет роль пиктограммы... ... Оконный интерфейс был в начале 80-х столь же революционным и сыграл столь же положительную роль, что и текстовый интерфейс 70-х... ... Вторая модель - " Стена в перспективе " - также отображает файловую систему, но вне ее иерархии, согласно двум каким-то параметрам, например частоте обращения к файлу и его размеру... Подробнее: http://fit-media.com/post_1204019048.htmlЕсли не хочется кусать локти
Степень соответствия запросу: 1,43%
Фрагменты текста поста : ... Таким образом после нескольких копирований вы обнаружите, что размер папки с копией гораздо больше размера папки-оригинала... ... Его достоинства: размер полученной копии будет в несколько раз (а иногда и в несколько десятков раз... ... ) меньше размера оригинала... Подробнее: http://fit-media.com/post_1203529769.htmlКак Заиконить Сайт
Степень соответствия запросу: 1,38%
Фрагменты текста поста : ... Как в то далекое время любая, даже самая мелкая программа пыталась защемить себя в трей к часам, так и теперь любой, даже самый неказистый сайт старается всунуть свою иконку в адресную строку браузера... ... Но в этом случае Вам придется добавить одну строчку в шаблон вашего сайта... ... ico), то Вам нужно вставлять в HTML-файлы строчку, описанную выше... ... Кроме того, если иконка лежит не в корне сайта, то в этой строчке нужно указать путь к иконке... ... Кстати, поскольку в этой строке можно записать полный путь (включающий домен сайта), то Вы запросто можете прикрепить себе иконку от чужого сайта... ... :) Все, что Вам потребуется - вписать строку AddType image/ICO ICO в файл... Подробнее: http://fit-media.com/post_1212879390.htmlУрок информатики для мелкософта (пояснение к залепе №8)
Степень соответствия запросу: 0,8%
Фрагменты текста поста : ... Дело в том, что это сделано не только (и не столько) для того чтобы избавить пользователя от написания длинных строк... ... Итак, по-пунктам: в строке (1) переменная c становится "дублем" переменной a , т... ... после инициализации в строке (2), значение c... Подробнее: http://fit-media.com/post_1198760520.htmlПошлите серфера на три веселых цифры!
Степень соответствия запросу: 0,8%
Фрагменты текста поста : ... Оправдав тем самым свою разгулявшуюся ленцу перед всем миром (и, в первую очередь, перед самим собой), он не стал разгребать сложные многопапочные запросы, а просто вырезал имя html-файла из строки адреса и этот файл и выдал в броузер... ... В строке адреса можно вводить что угодно - самое большее на что он способен - выдать надпись "Ничего не найдено"... ... com/download/ просто тупо вбив путь в строке адреса своего любимого Microsoft Internet Explorer'а... Подробнее: http://fit-media.com/post_1200930244.htmlDropBox - убийца фалообменников
Степень соответствия запросу: 0,8%
Фрагменты текста поста : ... Размер &mdash... ... Вот так, например, будет выглядеть только созданный мной альбом: Все картинки в нем кликабельны, клик на любой из них покажет ее в более крупном размере... ... Так же можно загрузить ее в полный размер, сохранить на диске или запустить автоматическое слайд-шоу... Подробнее: http://fit-media.com/post_1256945370.html
