ГЛЕБ ГЛЕБОВ: неужто по картинке не понятно? вообще если надо я могу ее перевести и на хабр выкинуть, просто статья уже довольно старая... если поискать думаю будут аналоги (хоть и не от дяди боба).
Владимир Грабко: что собственно вам мешает взять какой-нибудь из микрофреймворков (почти все они нынче поддерживают PSR-7) и сделать на их базе свою сборку?
Владимир Грабко: нет, придется потрудиться и доустанавливать. Благо готовые провайдеры, экстеншены и т.д. есть.
Александр А: что значит "полностью поддерживает REST Api"? Это как? тип позволяет работать с... HTTP? Content negotiations умеет из коробки или что? Любой фреймворк имеет полную поддержку REST Api.
vasIvas: вообще такое понятие как "обычный контроллер" в angular нет. ng-controller это директива, которая позволяет для элемента объявить какой-то контроллер. Скажем вы хотите присабачить куску темплейта поведение и добавить логику для работы с данными но вам лень делать для этого отдельную директиву - на помощь приходит ng-controller.
vasIvas: вообще у вас два варианта:
1) простой - добавлять удалять классы самому
2) использовать nganimate, что позволит разработчику использующему вашу директиву самому принимать решения как будет отрабатывать анимация и т.д.
vasIvas: заметте, я уже упоминал что контроллер только для работы с данными, а для работы с DOM есть link и он нужен только за этим. А у вас работа с DOM в контроллере...
и еще - controllerAs - там надо алиас контроллера прописывать... не пойму почему у вас там true.
diver23: проблем быть не должно, вы можете упереться только в лимит файлов для каталога для вашей файловой системы, разве что... ну и если что всегда можно использовать распределенные хранилища и файловые системы, или разбрасывать на несколько серверов. Тут как говорится вариантов слишком много.
Единственное поскольку вы используете PHP рекомендую вам сразу оперировать файлами через какую абстракцию типа Flysystem и тогда менять хранилища будет не больно.
diver23: да, именно так, и это нормально. Потом можно уже оптимизировать, вводить денормализацию тегов что бы ускорить выборку (помимо связей хранить массив тегов в сериализованном виде), тогда у нас и поиск по тегам будет работать хорошо и с джойнами не надо париться (или вы хотели для кадой записи отдельно запросы делать?). Проблемы со скоростью поиска в такой базе решаются индексами и выделением достаточного количества оперативки под них. Если у вас предвидятся такие нагрузки, то значит так надо.
10 000 сообщений на пользователя это много, это очень много. 10 000 пользователей по 1000 сообщений хоть немного более вероятный сценарий. В целом обычно это будет ДО 1000 сообщений с пользователя, в среднем думаю будет где-то сотня сообщений на пользователя.
ColdSpirit: я повторюсь - PHP умирает. Как только запрос с клиента отработан, PHP убивает все и ваш этот контроллер перестает существовать. Все запросы независимы, у каждого свой, инстанс контроллера, если хотите...
vasIvas: опять же как вы это собираетесь сделать в контексте директив? Ваши директивы понятия не имеют (И не должны) о том что их кто-то там собрался анимировать, как он это будет делать и т.д. ngAnimate нужен для того что бы реагировать на события, которые эмититят директивы. В частности если вам надо что бы по клику на кнопку что-то происходило - вы пишите директиву которая добавляет это поведение и довешивает ивент (или еще как).
Я не использую ngAnimate если что, у меня нет задачь связанных с анимациями. Но если вам любопытно - можете посмотреть как ngAnimate используется в angular-material или в ionic.
Это совершенно иной подход нежели тот которому вы хотите следовать, и да, что не так с сатанистами? Норм чуваки.
ColdSpirit: что за второй пользователь? в PHP ничего не может быть (по умолчанию) расшарено между двумя запросами. В php все stateless (опять же можно вооружиться всякими reactphp, php-pm и тд).
Если вам надо значение расшарить между сессиями пользователей юзайте редис или мемкэш (или apcu для чего маленького).