Меша́п (інакше «меш-ап», від — «змішувати») — концепція побудови вебзастосунків шляхом змішування функціональності різних програмних інтерфейсів та джерел даних. З технічної точки зору Mashup — це вебсайт, який об'єднує дані з кількох джерел в одному сайті; наприклад, використовує картографічні дані Google Maps та додає до них дані про нерухомість з Cragislist, у підсумку створюючи новий вебсервіс.
Саме поняття Mashup вперше використовувалося у популярній музиці та означало створення нової пісні за допомогою змішування декількох старих.
Отримання даних Дані, які використовуються в Mashup-ах, зазвичай отримуються через відкриті інтерфейси (API). Також можуть бути використані web-feed (наприклад, RSS, Atom). Також використовуються API Amazon, eBay, Flickr, Google, Microsoft, Yahoo та YouTube.
Архітектура Архітектура Mashup складається з трьох частин: Провайдера (постачальника) вмісту: це джерело даних; Mashup-сайту: вебпрограма, що виконує всю роботу; Інтерфейс Mashup — власне вебсторінки.
Приклади Mashup Основними категоріями є: карти, відео, фото, пошук, шопінг та новини.
Карти: Chicago Crime (У Поліцейського департаменту Чикаго є сайт , який інтегрує базу даних департаменту про злочини з Google Maps).
Відео та фото: Flickr (Це архів зображень. Використовуючи API Flickr, зображення можуть бути використані для створення Mashup).
Пошук та шопінг: Travature (Це портал про подорожі, який інтегрує пошук авіарейсів, оповідання про подорожі та огляди готелів. Портал дозволяє користувачам обмінюватися фотографіями та розповідями про подорожі).
Новини: (Прикладом є сайт Digg, який являє собою Mashup різних сайтів новин).
Mashup — порівняння з порталами Mashup порівняно з порталами:
ПорталMashupКласифікаціяСтара технологія, використовує розширення до вебсерверної технологіїВикористовує технологію Веб 2.0Філософія/ПідхідАгрегація фрагментів вебсторінокВикористовує API тощо для агрегаціїВхідні типи данихАгрегує презентаційні фрагменти (HTML, WML, VoiceXML и т.д.)Може обробляти також XMLМісце агрегаціїНа сервері.Як на сервері, так і на клієнтіСтиль агрегаціїСтиль «салатного бару» — накопичений вміст виводиться «один за одним» без накладок Стиль «плавильного котла» — дані можуть бути об'єднані в будь-який спосібМодель подій Модель подій читання та оновлення визначається в API конкретного портлету CRUD(Create, read, update and delete)-операції базуються на REST (Representational state transfer) принципахСтандартиПоведінка портлетів визначається стандартами JSR 168, JSR 286 та WSRP Обмін XML-даними. Часто використовуються RSS та Atom. Стандарти ще не створені.
Переваги по відношенню до традиційних вебсайтів / порталів Персоналізація Лаконізація інформації
Редактори Mashup Google Mashup Editor Microsoft Popfly Yahoo pipes
Посилання MashupAwards — best mashups on the web Mashups: The new breed of Web app ProgrammableWeb.com — Directory of mashups and Web 2.0 APIs Webmashup.com — Open Directory for Mashups and Web 2.0 APIs Serena Business Mashups — Free Business Composer and access to Mashup Exchange Why Mashups = (REST + 'Traditional SOA'): Web 2.0: Overview & background on Mashups, Mashup Editors and trends Enterprise Mashups in the Architecture Journal