Код по запросу
Эта статья нуждается в дополнительных цитатах для проверки . ( февраль 2022 г. ) |
В распределенных вычислениях код по требованию — это любая технология, которая отправляет исполняемый код программного обеспечения с серверного компьютера на клиентский компьютер по запросу клиентского программного обеспечения. Некоторыми хорошо известными примерами парадигмы кода по запросу в Интернете являются Java-апплеты Adobe ActionScript , язык для Flash Player и JavaScript . [1]
Код программы лежит на веб-сервере клиента в неактивном состоянии до тех пор, пока пользователь (клиент) не запросит веб-страницу, содержащую ссылку на код, с помощью веб-браузера . По этому запросу веб-страница и программа передаются на компьютер пользователя по протоколу HTTP . Когда страница отображается, код запускается в браузере и выполняется локально, внутри компьютера пользователя, пока не будет остановлен (например, когда пользователь покидает веб-страницу).
Код по требованию — это специфическое использование мобильного кода в области мобильности кода . [2]
Ограничения
[ редактировать ]Клиент-сервер
[ редактировать ]Первое ограничение состоит в том, что система должна состоять из клиентов и серверов.
У серверов есть ресурсы, которые хотят использовать клиенты. Например, на сервере есть список цен на акции (т.е. ресурс), и клиент хотел бы отобразить эти цены в виде красивых графиков.
Между этими двумя проблемами существует четкое разделение проблем. Сервер заботится о внутренней части (хранилище данных, бизнес-правила и т. д.), а клиент обрабатывает внешние данные (пользовательские интерфейсы).
Лицо без гражданства
[ редактировать ]Чтобы еще больше упростить взаимодействие между клиентами и серверами, второе ограничение заключается в том, что связь между ними должна быть без сохранения состояния.
Это означает, что вся информация о сеансе клиента хранится на клиенте, а сервер об этом совершенно не знает. Следствием этого является то, что каждый запрос должен содержать всю информацию, необходимую для выполнения запроса (т. е. он не может полагаться на какую-либо контекстную информацию).
Кэш
[ редактировать ]Последнее ограничение связи клиент-сервер состоит в том, что ответы серверов должны быть помечены как кэшируемые или некэшируемые.
Эффективный кеш может сократить количество взаимодействий клиент-сервер, что положительно влияет на производительность системы. По крайней мере, с точки зрения пользователя.
Код по запросу
[ редактировать ]Код по требованию (COD) — единственное необязательное ограничение в REST. Это позволяет клиентам повысить свою гибкость, поскольку именно сервер решает, как будут выполняться определенные действия. Например, с помощью кода по запросу клиент может загрузить Javascript, Java-апплет или даже приложение Flash, чтобы зашифровать связь, чтобы серверы не знали о каких-либо процедурах/ключах шифрования, используемых в этом процессе. [ нужны разъяснения ]
Однако использование наложенного платежа снижает видимость, отсюда и необязательность. Кроме того, не каждому API нужна такая гибкость.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Карзанига, Антонио; Джан Пьетро Пикко; Джованни Винья (2007). «Код все еще меняется? Оглядываясь назад на десятилетие мобильности кода». 29-я Международная конференция по программной инженерии (ICSE'07 Companion) . Вашингтон, округ Колумбия, США: Компьютерное общество IEEE. стр. 9–20. CiteSeerX 10.1.1.119.5295 . дои : 10.1109/ICSCOMPANION.2007.44 . ISBN 978-0-7695-2892-2 . S2CID 8728428 .
- ^ Фуггетта, Альфонсо; Джан Пьетро Пикко; Джованни Винья (1998). «Понимание мобильности кода» . Транзакции IEEE по разработке программного обеспечения . 24 (5): 342–361. CiteSeerX 10.1.1.20.3442 . дои : 10.1109/32.685258 . ISSN 0098-5589 . Проверено 29 июля 2009 г.