REST | это... Что такое REST? (original) (raw)
REST (сокр. англ. Representational State Transfer, «передача представлений состояний»[1]) — стиль построения архитектуры распределенного приложения. Был описан и популяризован в 2000 году Роем Филдингом (Roy Fielding), одним из создателей протокола HTTP. Самой известной системой, построенной в значительной степени по архитектуре REST, является современная Всемирная паутина.
Данные в REST должны передаваться в виде небольшого количества стандартных форматов (например HTML, XML, JSON). Сетевой протокол (как и HTTP) должен поддерживать кэширование, не должен зависеть от сетевого слоя, не должен сохранять информацию о состоянии между парами «запрос-ответ». Утверждается, что такой подход обеспечивает масштабируемость системы и позволяет ей эволюционировать с новыми требованиями.
Антиподом REST является подход, основанный на вызове удаленных процедур (Remote Procedure Call — RPC). Подход RPC позволяет использовать небольшое количество сетевых ресурсов с большим количеством методов и сложным протоколом. При подходе REST количество методов и сложность протокола строго ограничены, из-за чего количество отдельных ресурсов может быть большим.
Примечания
- ↑ Речь идет о представлении (например в виде HTML) состояния абстрактного автомата.
Ссылки
- Roy Fielding Architectural Styles and the Design of Network-based Software Architectures (англ.) (2000). Архивировано из первоисточника 15 мая 2012. Проверено 20 февраля 2009.
- Cesare Pautasso; Olaf Zimmerman; Frank Leymann RESTful Web Services vs. Big Web Services: Making the Right Architectural Decision (англ.). 17th International World Wide Web Conference (WWW2008). Архивировано из первоисточника 15 мая 2012. Проверено 20 февраля 2009.
- Джон Фландерс Введение в службы RESTful с использованием WCF. MSDN Magazine (январь 2009). Архивировано из первоисточника 15 мая 2012. Проверено 20 февраля 2009.