Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ekzamen_IP.doc
Скачиваний:
42
Добавлен:
19.03.2016
Размер:
625.15 Кб
Скачать

6. Web-приложение. NoSql.

Одно из значений термина “NoSQL” — это отход от реляционной модели в пользу более специфических (или более обобщенных) моделей данных. Например, традиционно успешными NoSQL-системами являются системы хранения пар “ключ-значение”, такие как Redis или Memcache. Их модель данных предельно проста — это в сущности ассоциативный массив, где ключи имеют строковый тип, а значения могут содержать любые данные. Как и любой ассоциативный массив, такие системы поддерживают ограниченный набор операций с данными — прочитать значение по ключу, установить значение ключа, удалить ключ и связанное с ним значение. Операция “получить список ключей” может не поддерживаться в таких системах. 

Другой пример успешных NoSQL-систем — это документные хранилища. Объекты в таких хранилищах обычно являются ассоциативными массивами свободной структуры, то есть в одной и той же “таблице” могут храниться разные по сути объекты. Примеры систем такого класса — MongoDB и Cassandra. В зависимости от того, какие реально данные хранятся в конкретной базе, ее производительность может сильно варьироваться. Например, если оптимизировать такую “таблицу”, храня в ней однотипные объекты.

Третий пример специализированных NoSQL-систем — это графовые базы данных. Они специальным образом заточены под обработку конкретной структуры данных, причем обычно для работы с большим объемом данных (потому что на небольших объемах может прекрасно справиться стандартная реляционная реализация).

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

7. Web-приложение. Возможности JavaScript.

JavaScript является интерпретируемым языком программирования с объектно-ориентированными возможностями.

Возможности

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

Что же касается остальных возможностей – они зависят от окружения, в котором запущен JavaScript. В браузере JavaScript умеет делать всё, что относится к манипуляции со страницей, взаимодействию с посетителем и, в какой-то мере, с сервером:

  • Добавлять различные эффекты анимации

  • Реагировать на события - обрабатывать перемещения указателя мыши, нажатие клавиш с клавиатуры

  • Осуществлять проверку ввода данных в поля формы до отправки на сервер, что в свою очередь снимает дополнительную нагрузку с сервера

  • Создавать и считывать cookie, извлекать данные о компьютере посетителя

  • Определять браузер и в зависимости от браузера - загружать нужную страницу, специально предназначенную для этого браузера

  • Изменять содержимое HTML-элементов, добавлять новые теги, изменять стили

Ограничения

  • JavaScript не может закрывать окна и вкладки, которые не были открыты с его помощью

  • Не может защитить исходный код страницы и запретить копирование текста или изображений со страницы

  • Не может осуществлять кроссдоменные запросы, получать доступ к веб-страницам, расположенным на другом домене. Даже когда страницы из разных доменов отображаются в одно и тоже время в разных вкладках браузера, то код JavaScript принадлежащий одному домену не будет иметь доступа к информации о веб-странице из другого домена. Это гарантирует безопасность частной информации, которая может быть известна владельцу домена, страница которого открыта в соседней вкладке

  • Не имеет доступа к файлам, расположенным на компьютере пользователя, и доступа за пределы самой веб-страницы, единственным исключением являются файлы cookie, это небольшие текстовые файлы, которые JavaScript может записывать и считывать.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]