Денис Колисниченко - Linux: Полное руководство
- Название:Linux: Полное руководство
- Автор:
- Жанр:
- Издательство:Наука и Техника
- Год:2006
- Город:Санкт-Петербург
- ISBN:5-94387-139-Х
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Денис Колисниченко - Linux: Полное руководство краткое содержание
Данная книга представляет собой великолепное руководство по Linux, позволяющее получить наиболее полное представление об этой операционной системе. Книга состоит из трех частей, каждая из которых раскрывает один из трех основных аспектов работы с Linux: Linux для пользователя, сетевые технологии Linux (и методика настройки Linux-сервера), программирование Linux. В книге охвачен очень широкий круг вопросов, начиная с установки и использования Linux «в обычной жизни» (офисные пакеты, игры, видео, Интернет), и заканчивая описанием внутренних процессов Linux, секретами и трюками настройки, особенностями программирования под Linux, созданием сетевых приложений, оптимизацией ядра и др.
Изложение материала ведется в основном на базе дистрибутивов Fedora Cora (Red Hat) и Mandriva (Mandrake). Однако не оставлены без внимания и другие дистрибутивы SuSe, Slackware, Gentoo, Alt Linux, Knоppix. Дается их сравнительное описание, a по ходу изложения всего материала указываются их особенности.
Книга написана известными специалистами и консультантами по использованию Linux, авторами многих статей и книг по Linux, заслуживших свое признание в самых широких Linux-кругах. Если вы желаете разобраться в особенностях Linux и познать ее внутренний мир, эта книга — ваш лучший выбор.
Linux: Полное руководство - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
16.3.3. Директивы управления производительностью
Поэкспериментировав с этими директивами и выбрав оптимальные значения, можно добиться существенного повышения производительности вашего сервера.
Сервер Apacheдля каждого соединения запускает отдельную копию, которая будет обрабатывать запросы клиента. Управлять запушенными копиями позволяют директивы StartServers, MinSpareServers, MaxSpareServers.
♦ StartServers, MaxSpareServers, MinSpareServers. Для каждого нового соединения создается новая копия процесса сервера. Директива StartServersзадает количество копий, которые будут созданы при запуске исходной копии сервера. При этом исходная копия сервера получает запросы и передает их свободным копиям. Это позволяет равномерно распределить нагрузку между отдельными процессами и повысить производительность сервера, однако на практике все не так хорошо, как хотелось бы. Существенного прироста производительности можно добиться только в случае большой загрузки сервера. По умолчанию запускается пять копий сервера. Если число поступающих запросов превышает количество запущенных копий сервера, запускаются дополнительные процессы-серверы. Эти процессы не завершаются после обработки своего запроса, а продолжают находиться в памяти. Директива MaxSpareServersпозволяет указать максимальное число таких процессов. Если это количество превышено, то лишние процессы завершаются. Если количество «серверов на подхвате» меньше, чем задано директивой MinSpareServers, запускаются дополнительные копии. Для работы этих директив необходимо, чтобы сервер был запущен в автономном режиме.
♦ CacheNegotiatedDocs— эта директива позволяет прокси-серверу, например, SQUID, не кэшировать документы, которые не генерируются автоматически, то есть в процессе выполнения различных сценариев. Согласно протоколу HTTP/1.0, сервер Apacheс каждым пакетом посылает заголовок «Pragma: no-cache» прокси-серверу, что позволяет отключить кэширование документов (в протоколе HTTP/1.1 вместо Pragma используется Cache-Control). Если вы включите данную директиву, то вы разрешите прокси-серверу кэшировать документы. К сожалению, далеко не все прокси-серверы отключают кэширование после получения данного заголовка. При написании своего CGI-сценария вам, скорее всего, придется самому выводить заголовок Pragma (иди Cache-Control) и мета-тэги, которые указывают на дату последнего обновления документа.
16.3.4. Директивы обеспечения постоянного соединения с клиентом
Эти директивы обеспечивают постоянное соединение с клиентом, а также управляют параметрами установленного соединения.
♦ Timeout— задает промежуток времени в секундах, в течение которого сервер продолжает попытки возобновления приостановленной передачи данных. Значение директивы Timeoutраспространяется не только на передачу, но и на прием данных. Если вам нужно получать большие файлы, рекомендую увеличить данное значение.
♦ KeepAlive— разрешает постоянные соединения, то есть такие соединения, в которых производится более одного запроса за один раз.
♦ KeepAliveTimeOut— данная директива определяет тайм-аут для постоянного соединения.
♦ MaxClients.Иногда поступающих запросов настолько много, что компьютеру не хватает ресурсов для загрузки новых копий сервера в память и их выполнения. Директива MaxClients(значение по умолчанию — 150) определяет максимальное число копий сервера, которые могут выполняться одновременно.
♦ MaxRequestsPerChild. После обработки определенного количества запросов, указанного в этой директиве, копия сервера завершается, а вместо нее запускается новая.
16.3.5. Директивы создания виртуальных узлов
Довольно часто пользователь не может позволить себе такую роскошь, как собственный физический веб-сервер, то есть отдельный компьютер, постоянно подключенный к Интернет, на котором запущен сервер Apache. Поэтому современные веб-серверы поддерживают виртуальные узлы. У вас будет собственное имя, например, www.firma.ru, но в действительности ваши файлы будут помешены не на отдельном компьютере www.firma.ru, а будут находиться на сервере провайдера (или хостера) — www.isp.ru.
Благодаря технологии виртуальных узлов один сервер хостинг-провайдера обслуживает сотни или даже тысячи сайтов.
На своем домашнем веб-сервере вы также можете создать один или несколько виртуальных узлов, если, конечно, вам это нужно.
Listen— эта директива позволяет вам связывать Apacheс определенным IP-адресом и/или дополнительными портами.
BindAddress— эта директива сообщает серверу, какой IP-адрес следует прослушивать. Значением данной директивы может быть «*» (любой адрес), IP-адрес или полное имя домена.
Блок директив VirtualHostбудет рассмотрен позднее, при описании создания и использования виртуальных узлов.
16.3.6. Директивы настройки отображения каталогов
Эти директивы позволяют «украсить» ваш веб-сервер, например, сопоставить значок типу файла или определить оформление каталога.
♦ DirectoryIndex— позволяет задать название документа, который будет возвращен по запросу, не содержащему имени документа. Например, если вы введете в строке адреса броузера http://localhost, то будет возвращен один из указанных в директиве DirectoryIndexдокументов. С помощью данной директивы можно задать несколько имен файлов. Значениями по умолчанию являются index.html index.php index.htm index.shtml index.cgi Default.htm default.htm index.php.
♦ FancyIndexing. При получении запроса, не содержащего имя документа, сервер передаст один из файлов, указанных в директиве DirectoryIndex. Если такой файл не существует, клиенту будет возвращено оглавление каталога. При включении директивы FancyIndexingв оглавлении каталога будут использованы значки и описания файлов. Если директива FancyIndexingвыключена, оглавление будет представлено в более простом виде.
♦ AddIconByType(TEXT, URL) mime-type — сопоставляет значок типу файла. Значок будет использоваться при выводе каталога, если включена директива FancyIndexing. Параметр TEXT определяет текстовое описание типа, которое увидят пользователи, использующие текстовый браузер или пользователи, у которых отключено отображение рисунков. Параметр URL определяет адрес значка, а параметр mime-type — это тип файла, с которым нужно сопоставить значок. Полный перечень MIME-типов приведен в файле
apache-mime.types
. В качестве имени файла можно задать не только MIME-тип, но и символы, которыми заканчивается имя файла (см. листинг 16.1), но для этого нужно использовать директиву AddIconвместо AddIconByType.
Интервал:
Закладка: