Антон Уланов: если вы отправляете сообщение со стороны клиента, то вы его сохраняете во внутренее хранилище приложения с временной меткой и признаком того, что сервер не получил его.
Когда отправляете сообщение на сервер, вы отправляете его вместе с временной меткой, чтобы потом можно было восстановить хронологию отправки сообщений. Т.к. кордова опирается на базовые web технологии, то хранить сообщения можно на клиенте без каких-либо проблем. Читайте тут https://cordova.apache.org/docs/en/latest/cordova/...
Константин Хаиров: если хотите хостить видео у себя хотя бы нормально, то вам нужно собирать пк со следующими характеристиками - оперативки минимум 4GB (больше - лучше), жесткий SSD, чем больше, тем лучше. При росте посещаемости обычный шпиндельный диск не справится. Сетевая должна быть 1Gbps, лучше - две. Дальше, надо будет установить и настроить стриминг nginx хотя бы по этой инструкции https://habrahabr.ru/post/145867/ Обязательно настройте поддержку range-запросов и ограничение скорости отдачи. Если есть возможность поддержки двух сетевых карт, то настройте балансировку трафика.
При создании сайта, думайте так: сайт находится на одном сервере, видосы на другом (сеть доставки контента). При росте популярности сможете добавлять сервера с видосами и все.
xmoonlight: canvas сама по себе достаточно быстрый, но для бэкграунда я бы обошелся просто картинкой. Это сэкономило бы ресурсы. Все же программная генерация фона довольно ресурсоемкая вещь, там приличное количество попиксельных вычислений, особенно размытие движением.
Дмитрий Крымцев: вы про это не сказали в вопросе. То, что вы хотите называется системой документооборота. Поверьте, прозрачности это не добавляет.
Мой совет просто используйте чат или почту. Если ваши приказы не исполняются или не читаются, то прохо не с техникой, а с дисциплиной. Это решается простыми вещами: выговором и увольнением. Один раз делаете общее собрание, в котором говорите - смотрите в таком-то канале апдейты. Кто неисполняет, будет уволен. Немного жестко, но быстро решает проблему дисциплины.
Залейте их на S3 https://aws.amazon.com/s3/ Если трафика немного, то первый год вообще бесплатно будет. Чуть дальше надо будет платить небольшие деньги. С бесплатными хостингами всегда будет какая-нибудь канитель. Скупой платит дважды.
nuclear_kote: разумеется не будет, т.к. для этого и придумано кэширование, чтобы не скачивать данные каждый раз. Если вы хотите обновление данных, то реализуйте подобную логику в фабрике. then() вызвать два раза не получится, т.к. это нарушение логики работы промисов.
Yustas Alexu: еще преимущества монги в том, что когда в одну и туже коллекцию у вас делают 100 запросов в секунду вставляя, удаляя, обновляя и выбирая данные в разных структурах, монга с этим справляется и умудряется еще и индексы перестроить, ну помимо шардинга и отказоустойчивой репликации. Вообще и PostgreSQL с этим справится, но прийдется повозиться. Основная проблема в том, что нужно выбирать базу под задачу. Если у вас магазин на 2000 товаров с 1М посетителей в день, то с MySQL или PostgreSQL проблем не будет. А вот если вам нужно хранить историю лечения пациента с жутко варьирующейся структурой данных, шифрованием, да еще и в масштабах города, то тут подойдет MongoDB. А если нужно собрать данные с миллионов датчиков с заводов расположенных по всей стране и обработать, то добро пожаловать в мир Cassandra, Hadoop и т.д.
Roman Kitaev: никто не говорит о простом обновлении 18к записей в одной таблице. В Opencart их полсотни. Одно добавление новой позиции затрагивает не менее 10 таблиц. Например импорт прайс-листа дополнительно должен включать логику проверки данных на существование, а это конкурентные выборки. Причем желательно такие изменения заворачивать в обвертку ввиде транзакций. Вы и другие люди решают разные задачи. Поэтому и системные требования разные.
Roman Kitaev: все зависит от структуры ваших данных, времени ответа от сервера, количества данных, частоты обновлений. Посещаемость тоже влияет сильно. У многих магазинов есть разного рода синхронизации со складами, учетными системами. Это все непрерывно обновляет данные. Что требует перестройки индексов. И все это в режиме реального времени.
superivankorolev: вероятно есть какой-то буфер, в который складываются данные и затем отправляются. Вы с socket.io работаете или с классическими сокетами?
Когда отправляете сообщение на сервер, вы отправляете его вместе с временной меткой, чтобы потом можно было восстановить хронологию отправки сообщений. Т.к. кордова опирается на базовые web технологии, то хранить сообщения можно на клиенте без каких-либо проблем. Читайте тут https://cordova.apache.org/docs/en/latest/cordova/...