Читал про HMVC, сразу же возникли вопросы, на которые не смог найти ответы.
Все вопросы в рамках Сервер-Серверного взаимодействия.
1) В каком виде возвращается ответ от модуля(Триады)? Имею ввиду, если возвращать ответ в JSON, то при парсинге теряем время. Я так понял, для таких вещей существует деление на внутренние и внешние запросы. При внутренних сам фреймворк должен разруливать и возвращать сразу в виде массива или объекта?
2) Как реализуются такие вещи, как авторизация пользователей?
В каждом запросе отдельно? В таком случае куча одинаковых запросов к базе.
Или тут тоже фреймворк должен красиво разруливать внутреннии запросы (Хранить информацию о пользователе)?
UPD
3) Как определяется, что запрос от клиента? Роутинг?
4) Используются ли токены/ключи при взаимодействии между триадами? (Или все данные которые передаются между триадамы, должы быть доступны и пользователям?)
1. Можно всегда из триады возвращать массив данных. И уже в случае отдачи их клиенту - кодировать в JSON.
2. Состояние пользователя должно оставаться постоянным в течении всего запроса, если его не изменяли в коде. По этому это состояние должно хранится в своего рода обертке приложения, а доступ к ней должен быть у любой триады, так как вызов этой триады будет идти через эту обертку.
Это приблизительно. На самом деле вопросы весьма творческие)
1) Я плохо знаком с тонкостями передачи данных по HTTP, но, разве, при внешнем запросе, мы можем возвращать что-то кроме символов? Или я не совсем понял, что вы имеете в виду?
2) Что из себя представляет "обертка"?
2.1) Каким образом она реализуется?
2.2) Как ее горизонтально масштабировать?
Вот реализация MVC с 0 по статье с хабра, сверху дописал HMVC (смотри в app/core/router). Этот проект может ответить на новые вопросы. https://github.com/olijen/mvc
Если что - пиши, помогу.