Новые книги

Согласно расхожему мнению, человек, владеющий информацией, владеет миром. Интернет – гигантская информационная база современности, и необходимость освоения тонкостей работы в сети скоро станет насущной для всех – от специалистов по конкурентной разведке, маркетингу и PR, в жизни которых Интернет уже играет не последнюю роль, до рядовых служащих.

Как найти в Интернете информацию о конкретных людях, компаниях и товарах? Как организовать продвижение собственного предприятия в Сети? Как уберечься от хакеров и спрятать информацию на своем компьютере от посторонних? Как бороться с вирусами и вредоносными программами? Ответы на эти и многие другие вопросы вы найдете в нашей книге – подробном путеводителе по миру Интернета. Представленные здесь практические советы помогут вам не просто выстоять в конкурентной или информационной борьбе, но и победить в ней, изучив неизвестные рядовому пользователю возможности Всемирной паутины.

Издание представляет практический интерес для специалистов по бизнес-разведке, маркетингу, рекламе и PR, а также для директоров и менеджеров, желающих эффективно продвигать свое предприятие на современном рынке.
Эта книга – последовательная и подробная инструкция по интернет-маркетингу. В ней Федор Вирин, директор по исследованиям портала Mail.Ru, собрал собственный богатый практический опыт продвижения товаров и услуг в Интернете, а также опыт ведущих российских компаний. Впервые в одной книге объединены и систематизированы такие отдельно существующие и развивающиеся части интернет-маркетинга, как контекстная реклама, таргетинг, веб-аналитика, медиапланирование в Интернете, поисковый маркетинг, вирусная реклама и другие.

Выполняя приведенные в книге задания, вы научитесь анализировать и эффективно использовать возможности интернет-маркетинга. Полученные знания вы сможете начинать использовать сразу после прочтения, вне зависимости от текущего состоянии дел в вашей компании.

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

Примечания для хакания кода

 

Примечания для хакания кода

Управление памятью внутри PHP/FI - сложная вещь. Так как пакет может выполняться как модуль сервера, мы должны быть очень осторожны относительно ресурсов памяти. Программа должна быть не только реентерабельной, но также нужно учитывать тот факт, что мы можем получить в любое время сигнал по тайм-ауту, по которому управление выбывает из модуля. Мы не получим никакого предупреждения, и не будет времени, чтобы освободить память, которая может быть распределена. И эта память должна быть освобождена, или область данных процесса httpd, с которым мы связаны, может расти неопределенно. Это также применимо, когда PHP выполняется в режиме CGI, так как это может быть установлено, чтобы выполниться как постоянный процесс FastCGI .

Решение состоит в том, чтобы использовать подпулы памяти. Эти пулы автоматически очищаются Apache, по завершению сеанса, или в случае FastCGI, эти пулы очищаются в main.c, каждый раз, когда выполняется цикл оболочки FastCGI. В настоящий момент используются три таких пула. Они пронумерованы 0,1 и 2. Номер подпула является первым аргументом для функций emalloc и estrdup.

Пул 0 - Сеансовое время жизни
Любая память, распределенная из этого пула будет существовать весь сеанс. Это - хорошая идея использовать этот настолько мало насколько возможно. Например, если кто-то сделает цикл while, который выполняет итерации 1000 раз и внутри этого цикла while, он вызывают что-либо, что распределяет память из пула 0, то эта память будет распределена 1000 раз. Это - быстрый способ исчерпать всю распределенную область данных.
Пул 1 - Временное хранение (самое короткое время жизни)
Если для чего-либо внутри функции необходим временный рабочий буфер, память для него, должна исходить из этого пула. Этот пул очищается при каждом обращении к yylex(). т.е. память теряется примерно, как только Вы оставляете функцию.
Пул 2 - Область выражений (среднее время жизни)
Этот пул существует на протяжении существования выражения. Выражением в этом контексте, является полная командная строка PHP/FI. Он не будет очищаться внутри функции, так как выражение верхнего уровня, которое вызвало функцию, не будет завершено до возврата из функции. Флажок ClearIt в функции yylex() указывает, когда будет безопасным очистить этот пул.

Использование подпулов полностью устраняет потребность явно освобождать память где-либо в программе, с одним исключением - памятью распределенной, с использованием регулярного вызова malloc различными библиотеками, которые могут быть слинкованы в PHP. Библиотека gdbm - один из таких примеров.

[Назад] [Содержание]