Здесь есть несколько вопросов, позвольте мне попробовать ответить на каждый из них ...
Поскольку это Интернет-приложение с серверами объединения, использование подразумеваемого HTTP-протокола имеет большой смысл. Это можно сделать с помощью Form POST, GET или даже REST-представления некоторой пользовательской структуры данных. В конце концов, точный подход к использованию должен сводиться к размеру и сложности передаваемой информации. Многие архитектуры используют эти подходы и часто комбинируют их с зашифрованными, подписанными и / или кодированными полезными нагрузками для безопасности. Одним из недостатков, который следует учитывать при использовании этих подходов, является то, что они потребуют от вас четкой передачи всех форматов сообщений запроса / ответа, диапазонов полей и вариантов, поскольку эти механизмы на самом деле не описывают сами себя. С другой стороны, в этих шаблонах используются очень распространенные протоколы, их легко понять, легко внедрить и, как правило, они подключаются по проводам.
В отличие от этого, архитектуры с очень сложными структурами часто предпочитают использовать веб-сервисы на основе WSDL. Также основанные на общих стандартах, они, как правило, описывают сами себя, по своей сути являются версиями, хотя для их реализации может потребоваться больше времени и энергии. Существует множество преимуществ веб-сервисов, основанных на многих стандартах WS- *, которые, возможно, заслуживают дальнейшего изучения в вашем случае.
Что касается процесса резервирования ... многие похожие архитектуры будут использовать модель оркестровки, такую как:
- Найти открытые места для бронирования
- Зарезервировать место для бронирования. Это устанавливает блокировку с истекающим сроком действия, в то время как запрашивающая сторона заполняет всю необходимую информацию о бронировании. Это смягчает условия гонки, которые могут привести к нескольким бронированиям для одного и того же места
- Как только вся необходимая информация о бронировании получена и подтверждена, бронь подтверждается и постоянно блокируется для использования другими заявителями
Что касается комментария БД в стиле SQL, я не могу сказать, учитывая количество предоставленной информации. С учетом сказанного мои инстинкты говорят мне, что БД в стиле SQL вполне разумна для этой проблемы. У меня есть базы данных со многими педабайтами и очень высоким SLA. Вы подразумевали необходимость в высокой доступности, и базы данных на основе SQL уже несколько десятилетий подтверждают свою поддержку в этой области.
Надеюсь, это поможет.