Главная Обратная связь

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)






Почему надо хранить в куках хеш случайно сгенерированной строки, а не хеш пароля? 6 часть



Облачные хранилища - предоставляется возможность собрать сервер по логически нарезанным частям. По примеру Amazon и Nirvanix.

Облачные вычисления - тот случай, когда клиент платит не за использованные аппаратные ресурсы для своих клиентов, а за услугу для своих же сотрудников (SAAS, WAAS, DAAS, IAAS, PAAS, HAAS и т.д.). Как правило на таких хостингах размещаются коллаборационные ресурсы и виртуальные офисы.

В России, с юридической точки зрения, услуга хостинга не относится к телематическим услугам связи в силу различия определения телематических услуг связи (предоставление доступа пользовательского оборудования к сети связи оператора[1]) и сути хостинга (предоставление ресурсов оборудования подключенного к сети связи для размещения и функционирования веб-сайта клиента).

В случае, когда оператор связи размещает у себя оборудование пользователя и обеспечивает его подключение к Интернету (колокация) — в части оказания услуги по обеспечению доступа к сети связи деятельность оператора подлежит лицензированию. В России лицензии выдаются Федеральной службой по надзору в сфере связи.[1] [2]

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

 


 

31.Повышение производительности веб-систем. Nginx, акселераторы: eaccelerator, memcached, APC, настройка СУБД MySQL.

Nginx - небольшой по размерам, очень быстрый, достаточно функциональный веб сервер и почтовый прокси-сервер. Из-за очень маленького потребления ресурсов системы и скорости работы, а так-же гибкости конфигурирования, веб сервер Nginx часто используется в качестве фронтэнда к более тяжеловесным серверам, такими как Apache, в проектах с высокой нагрузкой. Классическим вариантом является связка, Nginx - Apache - FastCGI. Работая в такой схеме, сервер Nginx, принимает все запросы приходящие по HTTP, и в зависимости от конфигурации и собственно самого запроса, решает, обработать-ли запрос самому и отдать клиенту готовый ответ или отправить запрос на обработку, одному из бакэндов ( Apache или FastCGI ).



Не стоит забывать про возможности кэширования данных и работу с memcached.

Список основных функциональных возможностей веб сервера Nginx.

Функционал сервера Nginx в качестве HTTP сервера

Обработка статического контента, индексные файлы, листинг директорий, кэш дескрипторов открытых файлов;

Акселерированное проксирование с кэширование, распределение нагрузки и отказоустойчивостью;

Акселерированная поддержка FastCGI серверов с кэшированием, распределением нагрузки и отказоустойчивостью;

Модульная структура, поддержка различных фильтров ( SSI, XSLT, GZIP, докачка, chunked ответы );

Поддержка SSL и расширения TLS SNI;

Ip-based или Name-based виртуальные сервера;

Работа с KeepAlive и pipelined соединениями;

Возможность конфигурирования любых таймаутов а так-же количества и размеров буферов, на уровне сервера Apache;

Выполнение различных действий в зависимости от адреса клиента;

Изменение URI с помощью регулярных выражений;

Специальные страницы ошибок для 4хх и 5хх;

Ограничение доступа на основе адреса клиента или по паролю;

Настройка форматов лог-файлов, ротация логов;

Ограничение скорости ответа клиенту;

Ограничение количества одновременных подключений и запросов;



Поддержка методов PUT, DELETE, MKCOL, COPY и MOVE;

Изменение настроек и обновление сервера без остановки работы;

Встроенный Perl;

Добиться ускорения в работе с Internet можно простым увеличением пропускной способности канала, например перейдя от dial-up-соединения к выделенным линиям, каналам ISDN или DirecPC. Это, пожалуй, самый простой, но и самый дорогой путь решения проблемы, и, как правило, немногие могут позволить себе подобную роскошь.

Другой вариант, чисто аппаратный, подразумевает замену модемов на модели с более высокой производительностью или использование модемного акселератора, например SupraSonic II от Diamond Multimedia (устанавливается на две телефонные линии и теоретически позволяет в два раза увеличить скорость передачи данных). Но подобное решение не всегда приемлемо: замена модема не даст кардинального увеличения производительности на плохом канале, а задействование второй телефонной линии, вообще говоря, не оправдано.

Третьим, самым дешевым вариантом улучшения работы в Internet является применение специального программного обеспечения. Так называемые Web-акселераторы за счет прогрессивных технологий кэширования позволяют ускорить время загрузки страниц на 30--60%.

Как это работает

Все Web-акселераторы в своей работе используют два основных приема: упреждающую загрузку ссылок и "интеллектуальное" кэширование" Web-страниц.

Метод упреждающей загрузки ссылок заключается в следующем: пока вы читаете или рассматриваете содержимое текущей страницы, акселератор начинает загружать страницы, связанные с ней ссылками и расположенные на том же Web-сайте. Это не ускоряет появление первой страницы сайта, но чем дольше вы на ней находитесь, тем большее количество связанных с ней страниц успевает загрузиться. В результате отображение следующей страницы происходит значительно быстрее, но если вы обращаетесь по ссылке, ведущей за пределы сайта, выигрыша в скорости не получится.

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

Настройка mysql

MySQL — свободная система управления базами данных (СУБД). Mysql после установки работоспособна без дополнительных настроек.

Базовые настройки

low-priority-updates — эта опция снижает приоритет операций INSERT/UPDATE по сравнению с SELECT. Актуально, если данные важно быстрее прочитать, чем быстрее записать.

skip-external-locking — опция установлена по умолчанию, начиная с версии 4. Указывает MySQL-серверу не использовать внешние блокировки при работе с базой. Внешние блокировки необходимы в ситуациях, когда несколько серверов работают с одними и теми же файлами данных, т.е. имеют одинаковую datadir, что на практике не используется.

skip-name-resolve — не определять доменные имена для IP-адресов подключающихся клиентов. При этом пользовательские разрешения нужно настраивать не на хосты, а на IP-адреса (за исключением localhost). Если вы соединяетесь с сервером только с локальной машины, то особого значения не имеет. Для внешних соединений ускорит установку соединения.

skip-networking — не использовать сеть, т.е. вообще не обрабатывать TCP/IP соединения. Общение с сервером при этом будет происходить исключительно через сокет. Рекомендуется, если у вас нет ПО, которое использует только TCP/IP для связи с сервером.

Ограничения

bind-address — интерфейс, который будет слушать сервер. В целях безопасности рекомендуется установить здесь 127.0.0.1, если вы не используете внешние соединения с сервером.

max_allowed_packet — максимальный размер данных, которые могут быть переданы за один запрос. Следует увеличить, если столкнетесь с ошибкой «Packet too large».

max_connections — максимальное количество параллельных соединений к серверу. Увеличьте его, если сталкиваетесь с проблемой «Too many connections».

max_join_size — запрещает SELECT операторы, которые предположительно будут анализировать более указанного числа строк или больше указанного числа поисков по диску. Используется для защиты от кривых запросов, которые пытаются считать миллионы строк. Значение по умолчанию более 4 миллиардов, поэтому вы скорее всего захотите его значительно уменьшить.

max_sort_length — указывает, сколько байт из начала полей типа BLOB или TEXT использовать при сортировке. Значение по умолчанию 1024, если вы опасаетесь некорректно спроектированных таблиц или запросов, то следует его уменьшить.

 


 

32.Системы управления контентом, их виды, способы классификации.

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

Большинство CMS можно разделить на back-office, т.е. инфраструктурную систему, обеспечивающую функциональность и хранение информации, и front-office, интерфейс с пользователем. В большинстве современных CMS back-office базируется на той или иной СУБД, может включать сервера приложений и портальное решение, а front-office имеет веб-интерфейс и допускает использование стандартных офисных пакетов редактирования документов (текстовые редакторы, электронные таблицы, средства создания презентаций, почтовые системы и т.п.). При этом вся функциональность, сложность разработки и администрирования сосредоточены в back-office, а пользовательские свойства в front-office.

Работа сайта на базе CMS

Как правило, в системе присутствует два хранилища. В первом (обычно реляционная СУБД) хранятся все данные, которые публикуются на сайте. Во втором (обычно файловая система) хранятся элементы представления – шаблоны, графические изображения и т.д. Кроме внешнего представления сайта, каким его видят все пользователи, есть как минимум два специализированных рабочих места. Первое рабочее место – для разработчиков сайта. С его помощью они задают структуру сайта, структуру контента, определяют внешний вид сайта, настраивают шаблоны представления информации. Этот инструментарий обычно не полностью автоматизирован. Для настройки сайта разработчики частично работают через средства CMS, часть информации размещается напрямую. Второе рабочее место – для владельцев сайта. Оно позволяет сотрудникам компании самостоятельно размещать информацию на сайте, без участия разработчиков. Менеджеры заказчика работают только через специализированное рабочее место.

Существующие на рынке решения

В миру существует несколько тысяч или десятков тысяч подобных приложений. Выделим три основных класса таких приложений:

1. Системы крупных производителей

2. Системы с открытым исходным кодом

3. Российские разработки

Существует определенное количество приложений от крупных производителей в основном предназначенных для крупных (enterprise) предприятий и организаций. Наиболее известными приложениями такого класса являются Microsoft Content Management Server, Documentum, Plumtree Portal, IBM WebSphere Portal и т.д.

Стоимость внедрения проектов на базе данных решений составляет от 50 000 euro. Поэтому сфера их применения очень узкая и ограничивается в основном созданием интранет-решений для крупных предприятий.

Другим достаточно большим классом являются open source системы. Преимуществами таких систем является доступность, наличие исходного кода, возможность локализации. Однако их использование связано с определенного рода проблемами:

1. Отсутствие техподдержки – системы предлагаются в основном без технической поддержки и все проблемы, связанные с использованием таких систем разработчик должен решать самостоятельно.

2. Узкая сфера применения – чаще всего продукт явился побочным результатом решения одной из собственных задач. Например, разработчики создали сайт-сообщество (community) для общения между собой. И далее решение, на котором работает этот сайт, предлагается как CMS. Очевидно, что подобное решение может хорошо решать задачи создания такого же рода сайтов, но может быть совершенно неприспособленно для решения задач другого плана (электронная коммерция, b2b и т.д.). Наиболее известными примерами таких систем являются OpenCMS, PhpNuke, PostNuke, Portal Starter Kit и т.д. Более подробно ознакомиться с существующими open source системами вы можете на сайте opensourceCMS.com. Сравнение некоторых open source систем вы можете найти в документе на сайте TechRepublic5.

Российские разработки созданы в основном различными web-студиями, имеющими большой опыт в реализации сайтов разных типов. Практически все решения являются коммерческими, но с достаточно низкой стоимостью (100-3000$) и могут быть использованы для создания сайтов разных типов. Наиболее популярными решениями этого класса являются Optimizer, QPublisher, Saitistika, Bitrix и другие.

По способу реализации системы можно разделить на следующие классы:

• Система публикации HTML-страниц.

• Система с фиксированной структурой.

• Система с гибко настраиваемой структурой документов.

 

1) Система публикации HTML-страниц

Разработчик позволяет через web-интерфейс осуществлять публикацию одного типа документа – страница. Под страницей обычно понимается тип документа, содержащий название (заголовок страницы) и собственно текст страницы. Текст страницы может быть изменен пользователем с помощью встроенного WYSIWYG-редактора. В данных системах все атрибуты находятся внутри HTML. Разделения данных и их представления не производится. Описанные выше задачи не решаются. Такие системы можно рассматривать как системы для управления очень небольшими простыми сайтами. Однако, в таком случае лучше взять более продвинутые в этом отношении промышленные средства, такие как Microsoft FrontPage, MacroMedia Contribute и т.д. С их помощью аналогичная задача решается более удобно.

2) Системы с фиксированной структурой.

В системах этого класса выделено наиболее используемых типы документов и заранее зафиксирована их структура. Например, есть понятие новость, статья, товар. Для каждого типа определен список атрибутов. Система решает полностью задачи по структуризации информации и разделению данных и представления. Но, если потребности клиента несколько отличаются, то есть два варианта.

Первый – использование стандартного типа «HTML-страница», как в системах 1-го типа. При этом эти для этих данных принципы структуризации и разделения данных и представления действовать не будут.

Второй – разработчик специально для проекта вносит изменения в систему и добавляет необходимые типы документов.

При принятии решения об использовании систем такого класса надо четко описать все типы документов, которые будут публиковаться на сайте.

3) Системы с гибко настраиваемой структурой.

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

33.Системы управления контентом. Возможности управления документооборотом, поисковые возможности.

 

Функционал для поддержки совместной работы операторов при публикации информации, можно разбить на следующие блоки:

• Документооборот

• Разграничение прав

• Поддержка одновременной работы

1) Документооборот

Под документооборотом понимается наличие возможности реализовать определенный процесс публикации документов на сайте. Обычно он реализовываться в одном из следующих вариантов:

• Возможность скрыть часть документов от пользователя.

• Поддержка процесса утверждения документа. Возможность создания цепочек прохождения документа.

• Поддержка процесса согласования документа. Система позволяет задавать произвольные стадии, которые должен проходить документ, какие операции можно выполнять на какой стадии, кем из сотрудников и т.д. Системы такого класса способны выполнять функции простейшей системы документооборота компании.

2) Разграничение прав

Под разграничением прав понимается возможность регулировать, кто имеет право выполнять какие операции. Система может строиться по разным принципам:

• По типам информации – одни сотрудники занимаются публикацией новостей, другие занимаются обработкой заказов и т.д.

• По разделам – раздел «Политика» ведется одними, раздел «Экономика» другими. Сотрудник осуществляет полное администрирование раздела, независимо от типа информации.

• Комбинация этих вариантов.

3) Поддержка одновременной работы

Чтобы в единый момент времени более одного человека не правили один документ система должна поддерживать как минимум операции – «взять на редактирование», «завершить редактирование». Чтобы дать возможность откатить изменения, необходимо, чтобы система хранила все версии документов.

Поисковые возможности.

Организация поиска по сайту достаточно серьезно, сложное дело. В реализации поиска есть ряд моментов, которые зависят не только от выбранных средств, но и от выбранных подходов к реализации поиска. Условно выделяют два основных подхода к организации поиска:

1. Поиск по сайту

2. Поиск по информации сайта

Поиск по сайту

Для организации такого варианта поиска используется внешняя поисковая система. Внешняя поисковая система состоит из двух модулей:

• Crawler – (обходчик, «паук») – программа, которая периодически сканирует сайт, т.е. проходит по всем доступным ему страницам сайта, скачивает их.

• Indexer – (индексатор) – программа, которая извлекает и индексирует тексты страниц.


Просмотров 395

Эта страница нарушает авторские права

allrefrs.ru - 2021 год. Все права принадлежат их авторам!