Как посмотреть файлы в дискорде
Как Discord хранит миллиарды сообщений
Discord продолжает расти быстрее, чем мы ожидали, как и пользовательский контент. Чем больше пользователей — тем больше сообщений в чате. В июле мы объявили о 40 млн сообщений в день, в декабре объявили о 100 млн, а в середине января преодолели 120 млн. Мы сразу решили хранить историю чатов вечно, так что пользователи могут вернуться в любой момент и получить доступ к своим данным с любого устройства. Это много данных, поток и объём которых нарастает, и все они должны быть доступными. Как мы это делаем? Cassandra!
Что мы делали
Изначальную версию Discord написали быстрее чем за два месяца в начале 2015 года. Возможно, одной из лучших СУБД для быстрого выполнения итераций является MongoDB. Всё в Discord специально хранилось в едином реплисете (replica set) MongoDB, но мы также готовили всё для простой миграции в новую СУБД (мы знали, что не собираемся использовать шардинг MongoDB из-за его сложности и неизвестной стабильности). На самом деле это часть нашей корпоративной культуры: разрабатывай быстро, чтобы испытать новую функцию продукта, но всегда с курсом на более надёжное решение.
Выбор правильной СУБД
Перед выбором новой СУБД нам требовалось понять имеющиеся шаблоны чтения/записи и почему возникли проблемы с текущим решением.
Сделав выбор, нужно было доказать, что он действительно оправдан.
Моделирование данных
Лучший способ описать новичку Cassandra — это аббревиатура KKV. Две буквы “K” содержат в себе первичный ключ. Первая “K” — это ключ раздела. Он помогает определить, в какой ноде живут данные и где их найти на диске. Внутри раздела множество строк, и конкретную строку внутри раздела определяет вторая “K” — ключ кластеризации. Он работает как первичный ключ внутри раздела и определяет способ сортировки строк. Можете представить раздел как упорядоченный словарь. Все эти качества вместе взятые позволяют очень мощное моделирование данных.
Вот упрощённая схема для нашей таблицы сообщений (она пропускает примерно 10 колонок).
Хотя схемы у Cassandra и похожи на схемы реляционных БД, их легко изменять, что не оказывает какого-либо временного влияния на производительность. Мы взяли лучшее от хранилища блобов и реляционного хранилища.
Как только начался импорт существующих сообщений в Cassandra, мы сразу увидели в логах предупреждения, что найдены разделы размером более 100 МБ. Да ну?! Ведь Cassandra заявляет о поддержке разделов 2 ГБ! По всей видимости, сама возможность не означает, что так нужно делать. Большие разделы накладывают сильную нагрузку на сборщик мусора в Cassandra при уплотнении, расширении кластера и т.д. Наличие большого раздела также означает, что данные в нём нельзя распределить по кластеру. Стало ясно, что нам придётся как-то ограничить размеры разделов, потому что некоторые каналы Discord могут существовать годами и постоянно увеличиваться в размере.
Мы решили распределить наши сообщения блоками (buckets) по времени. Мы посмотрели на самые большие каналы в Discord и определили, что если хранить сообщения блоками примерно по 10 дней, то комфортно вложимся в лимит 100 МБ. Блоки нужно получать из message_id или метки времени.
Для запроса недавних сообщений в канале мы сгенерировали диапазон блоков от текущего времени до channel_id (он тоже хронологически сортируется как Snowflake и должен быть старше, чем первое сообщение). Затем мы последовательно опрашиваем разделы до тех пор, пока не соберём достаточно сообщений. Обратная сторона такого метода в том, что изредка активным инстансам Discord придётся опрашивать много разных блоков, чтобы собрать достаточно сообщений со временем. На практике оказалось, что всё в порядке, потому что для активного инстанса Discord обычно находится достаточно сообщений в первом разделе, и таких большинство.
Импорт сообщений в Cassandra прошёл без помех, и мы были готовы опробовать её в производстве.
Тяжёлый запуск
Выводить новую систему в производство всегда страшно, так что хорошей идеей будет проверить её, не затрагивая пользователей. Мы настроили систему на дублирование операций чтения/записи в MongoDB и Cassandra.
Немедленно после запуска в баг-трекере появились ошибки, что author_id равен нулю. Как он может быть нулевым? Это обязательное поле!
Согласованность в конечном счёте
Cassandra — система типа AP, то есть гарантированная целостность здесь приносится в жертву доступности, что мы и хотели, в общем. В Cassandra противопоказано чтение перед записью (операции чтения более дорогие) и поэтому всё, что делает Cassandra, — это обновление и вставку (upsert), даже если предоставить только определённые колонки. Вы также можете писать в любую ноду, и она автоматически разрешит конфликты, используя семантику «последняя запись выигрывает» по каждой колонке. Так как это нас коснулось?
Пример состояния гонки редактирование/удаление
В случае, если пользователь редактировал сообщение, в то время как другой пользователь удалял то же самое сообщение, у нас появлялась строка с полностью отсутствующими данными, за исключением первичного ключа и текста, потому что Cassandra записывает только обновления и вставки. Для этой проблемы есть два возможных решения:
Решая эту проблему, мы заметили, что были весьма неэффективны с операциями записи. Поскольку Cassandra согласована в конечном счёте, то она не может вот так взять и немедленно удалить данные. Ей нужно реплицировать удаления на другие ноды, и это следует сделать даже если ноды временно недоступны. Cassandra справляется с этим, приравнивая удаление к своеобразной форме записи под названием “tombstone” («надгробие»). Во время операции чтения она просто проскакивает через «надгробия», которые встречаются по пути. Время жизни «надгробий» настраивается (по умолчанию, 10 дней), и они навсегда удаляются во время уплотнения базы, если срок вышел.
Удаление колонки и запись нуля в колонку — это абсолютно одно и то же. В обоих случаях создаётся «надгробие». Поскольку все записи в Cassandra являются обновлениями и вставками, то вы создаёте «надгробие» даже если изначально записываете нуль. На практике, наша полная схема сообщения состояла из 16 колонок, но среднее сообщение имело только 4 установленных значения. Мы записывали 12 «надгробий» в Cassandra, обычно без всякой причины. Решение проблемы было простым: записывать в базу только ненулевые значения.
Производительность
Известно, что Cassandra быстрее выполняет операции записи, чем чтения, и мы наблюдали в точности это. Операции записи происходили в интервале менее миллисекунды, а операции чтения — менее 5 миллисекунд. Такие показатели наблюдались независимо от типа данных, к которым осуществлялся доступ. Производительность сохранялась неизменной в течение недели тестирования. Ничего удивительного, мы получили в точности то, чего ожидали.
Задержка чтения/записи, по данным из лога
В соответствии с быстрой, надёжной производительностью чтения, вот пример перехода к сообщению годичной давности в канале с миллионами сообщений:
Большой сюрприз
Всё прошло гладко, так что мы выкатили Cassandra как нашу основную базу данных и вывели из строя MongoDB в течение недели. Она продолжала безукоризненно работать… примерно 6 месяцев, пока однажды не перестала реагировать.
Мы заметили, что Cassandra непрерывно останавливается на 10 секунд во время сборки мусора, но совершенно не могли понять, почему. Начали копать — и нашли канал Discord, который требовал 20 секунд для загрузки. Виновником был публичный Discord-сервер подреддита Puzzles & Dragons. Поскольку он публичный, мы присоединились посмотреть. К нашему удивлению, на канале было только одно сообщение. В тот момент стало очевидно, что они удалили миллионы сообщений через наши API, оставив только одно сообщение на канале.
Если вы внимательно читали, то помните, как Cassandra обрабатывает удаления при помощи «надгробий» (упомянуто в главе «Согласованность в конечном счёте»). Когда пользователь загружает этот канал, хоть там одно сообщение, Cassandra приходится эффективно сканировать миллионы «надгробий» сообщений. Тогда она генерирует мусор быстрее, чем JVM может собрать его.
Мы решили эту проблему следующим образом:
Будущее
В данный момент у нас работает кластер из 12 нодов с коэффициентом репликации 3, и мы продолжим добавлять новые ноды Cassandra по мере надобности. Мы верим, что этот подход работоспособен в долговременной перспективе, но по мере роста Discord просматривается отдалённое будущее, когда придётся сохранять миллиарды сообщений в день. У Netflix и Apple работают кластеры с сотнями нодов, поэтому пока что нам не о чем волноваться. Однако хочется иметь пару идей про запас.
Ближайшее будущее
Отдалённое будущее
Заключение
Прошло уже больше года с момента перехода на Cassandra, и несмотря на «большой сюрприз», это было спокойное плавание. Мы вышли с более 100 миллионов общего количества сообщений на более чем 120 миллионов сообщений в день, сохранив производительность и стабильность.
Благодаря успеху этого проекта, с тех пор мы перенесли все остальные наши данные в производстве на Cassandra, и тоже успешно.
В продолжении этой статьи мы исследуем, как мы осуществляем полнотекстовый поиск по миллиардам сообщений.
У нас до сих пор нет специализированных инженеров DevOps (только четыре инженера бэкенда), так что очень классно иметь систему, о которой не приходится волноваться. Мы набираем сотрудников, так что обращайтесь, если подобные задачки щекочут ваше воображение.
Где находится Discord на компе и телефоне
Пользователи мессенджера периодически спрашивают, где находится Дискорд, сколько он весит и куда устанавливается. Знание этих моментов пригодится при желании переместить или удалить программу, разобраться в возможностях компьютера или телефона. Ниже рассмотрим каждый из вопросов подробно.
Где находится Discord
Процесс скачивания Дискорд проходит по простому алгоритму. Вы входите по ссылке discordapp.com/download, выбирайте подходящую версию и жмете на кнопку скачивания. После загрузки файла на ПК необходимо запустить установочный файл и следовать инструкции. Если ничего не менять, система сама определяет место для размещения программы. По умолчанию это диск С.
Но системный диск компьютера большой, и в нем легко запутаться. Человек может долго искать, где находится Дискорд на компе, но так и не разобраться в этом вопросе. Многие делают ошибку и пытаются найти программу методом подбора. Такой вариант занимает много времени, поэтому лучше выбрать более хитрый ход.
Чтобы найти Дискорд, сделайте следующие шаги:
В приведенной строке вы можете посмотреть, в какой папке на компе находится Дискорд. В данном случае он расположился по пути C:ProgramDataUserDiscordapp-0.0.306. Если при установке вы задавали другое место, информация может быть иной.
Что касается телефона, программа находится в приложениях на встроенной памяти или SD-карте. Эти данные можно получить путем перехода в Настройки, раздел приложений и папку Дискорд. Там должно указываться, где именно установлен софт.
Как установить Дискорд на другой диск
Выше мы рассмотрели, куда устанавливается программа по умолчанию. Если не вносить никаких изменений, это происходит на диск С. При этом более точное расположение может меняться в зависимости от типа устройства и операционной системы. Для получения точных данных сделайте проверку с учетом приведенных выше рекомендаций.
Некоторых пользователей не устраивает, что Дискорд находится в системном диске на ПК. Они хотят переместить программу в другое место. Такая необходимость может возникнуть из-за нехватки места на диске С или при желании иметь папку с Discord под рукой (знать, где она находится).
Существует один способ, как установить Дискорд на другой диск — сделать это с нуля.
Алгоритм действий следующий:
Таким способом вы сами выбираете место для хранения Дискорд и будете знать, где находится программа. В дальнейшем можно будет входить в папку и вносить изменения, если это необходимо.
В случае с телефоном программа устанавливается на встроенную память. В некоторых моделях и при наличии прав рут приложение Дискорд можно перенести на карту памяти. Иногда этот процесс проходит автоматически, если в телефоне заданы соответствующие настройки.
Как перенести Дискорд на другой диск
Если вы уже установили приложение и хотите его перенести на другой диск ПК, сделать это вручную не получится. Для этих целей лучше использовать специальное приложение под названием FreeMove. Алгоритм действий следующий:
При возникновении ошибок еще раз убедитесь, что вы запустили FreeMove от имени администратора и указываете путь к существующей папке.
Сколько весит Дискорд
Еще один вопрос, который интересует многих пользователей, касается размеров программы, а именно сколько весит Discord на телефон или ПК. Этот момент важен, когда на компьютере или смартфоне объем свободного пространства ограничен. Чтобы уточнить, сколько весит Дискорд, необходимо знать, где находятся его загрузочные файлы.
Телефон
Чтобы посмотреть, сколько весит софт для телефона, перейдите по ссылке play.google.com/store/apps/details?id=com.discord&hl=ru. По этому адресу можно скачать приложение для смартфона и там же посмотреть его размеры. Если опуститься в нижнюю часть страницы, можно увидеть, что вес Дискорда составляет 59 МБ. Но учтите, что после установки и пользования размеры файла будут увеличиваться за счет накопления кэша. Если не чистить «мусор», размер файла может быть больше.
Чтобы посмотреть вес Дискорда на телефоне, необходимо знать, где находится приложение. Сделайте следующие шаги:
Зная, где находится информация о размерах Дискорд, можно регулировать этот параметр и не допускать его превышения.
Компьютер
По-иному обстоит ситуация, если дело касается компьютера. Исходный размер можно посмотреть сразу после скачивания. На момент написания статьи вес программы для ПК составляет 61 153 КБ. Для получения более точной информации (после установки) необходимо знать, где находится файл. Как получить эту информацию, мы уже рассматривали ниже. Алгоритм такой:
Таким же способом вы можете посмотреть, где находится Discord у себя на компьютере.
Итоги
Теперь вы сможете быстро определить, где находится Дискорд, сколько весит программа, и как ее перенести в другое место (если это необходимо). Сразу отметим, что для удобства лучше ставить софт по умолчанию (на ПК это диск С, а в мобильном телефоне — в память устройства). При возникновении дефицита места приложение всегда можно переместить.
Куда устанавливается Discord
За довольно короткий срок Дискорд стал одним из самых популярных голосовых мессенджеров для геймеров. Простота и удобство интерфейса, отличное качество связи и большое разнообразие каналов для разных игр — вот что привлекает множество пользователей. И хоть иногда программа выдает какие-то ошибки, в целом она работает стабильно.
Однако одной из проблем является то, куда устанавливается Discord. По умолчанию, пользователь сам должен задавать папку установки, но в этой программе дела обстоят немного по-другому.
Устанавливаем Дискорд
Чтобы узнать, в какую папку устанавливается Discord, необходимо пройти процесс установки и регистрации. Но прежде чем установить программу, нужно ее скачать.
Скачиваем и устанавливаем Дискорд
Процесс скачивания займет несколько секунд.
Куда устанавливается Discord
После прохождения процедуры установки и регистрации на вашем рабочем столе появится иконка Дискорда, через которую и можно получить путь к самой директории программы.
Если этот способ не работает или у вас нет пункта «Расположение файла», выбираем «Свойства» и кликаем по кнопке «Расположение файла»
Узнать, в какую папку установлен Discord не так сложно, как может показаться на первый взгляд. Нужно всего лишь правильно установить саму программу, пройти несложную регистрацию и сделать пару кликов своей мышкой.
Где находится Дискорд и как его найти: на компьютере или телефоне
Бывает необходимо узнать, где находится Дискорд на компьютере или смартфоне. Если вы устанавливали программу впервые и не меняли никакие настройки, то сможете с легкостью отыскать её на одном из дисков. А что касается смартфонов, то там ситуация гораздо проще – как правило, приложение располагается во внутренней памяти устройства. Несмотря на это, давайте подробно рассмотрим этот вопрос, остановившись на важных и нужных нюансах.
Где находится Дискорд?
Итак, давайте выясним, где находится Дискорд на компе или телефоне. Для этого мы составили две инструкции, ознакомиться с которыми получится немного ниже.
На компьютере
Если вы интересуетесь, куда устанавливается Discord на ПК, то воспользуйтесь следующей инструкцией:
Вообще, в подавляющем большинстве случаев приложение располагается именно на диске C. И вы сможете это проверить, воспользовавшись стандартным проводником компьютера.
На телефоне
На смартфоне узнать, где находится папка Discord получится стандартным способом. (актуально, если у вас есть microsd-карта)Для наглядности мы составили пошаговую инструкцию, поэтому советуем с ней ознакомиться:
Также вы можете воспользоваться специальными дополнениями, позволяющими в автоматическом режиме получить информацию о конкретной утилите. Найти их получится как в Play Маркете, так и в App Store – все зависит от операционной системы.
Сколько весит?
Если говорить о стандартном размере всех файлов, то после установки на ПК вы увидите значение примерно в 60 мегабайт. Однако со временем, когда вы будете активно использовать Discord, число может измениться в большую сторону. Для получения максимально точной информации предлагаем обратиться к пошаговой инструкции (она дает понять, сколько весит Дискорд на ПК):
А узнать, сколько весит Дискорд на телефон поможет следующее руководство:
Представленная инструкция актуальна для разных смартфонов, однако названия пунктов могут слегка отличаться. Это напрямую зависит от установленной прошивки и версии операционной системы.
Как перенести Дискорд на другой диск?
Довольно часто активные пользователи интересуются, как установить Дискорд на другой диск. Сразу отметим, что сделать это без дополнительных программ никак не получится. К примеру, мы составили инструкцию для популярного приложения FreeMove:
Таким образом, мы выяснили, где находится Дискорд на компьютере и смартфоне, а также узнали, сколько примерно весит программа. Остались дополнительные вопросы? Ждем их в комментариях!
Discord как корпоративный мессенджер и не только
Хочу рассказать про использование мессенджера Discord как основного средства коммуникации в команде. Опыт может быть полезен другим командам, использующим бесплатные мессенджеры, а также всем, кто ищет пути повышения эффективности использования мессенджеров.
Discord – программа странная и выдающаяся одновременно. Почему? Хотя бы потому, что про способы работы в Discord получилась целая статья.
Что-то пошло не так
В данной статье я рассматриваю исключительно мессенджеры, у которых основной функционал доступен бесплатно. Да, существуют прекрасные платные программы, но они за рамками данной статьи, даже если имеют бесплатный урезанный режим.
Обычные мессенджеры устроены так, чтобы работать «из коробки» и без всякого администрирования. Это вполне здравый подход, обеспечивающий низкий порог вхождения: просто создали групповой чат и общаемся в нём. По-другому эти мессенджеры не могут, так как сложные процедуры настройки отпугнут основную аудиторию. Но, как обычно, низкие начальные вложения оборачиваются высокими эксплуатационными издержками. Какие проблемы имеем в итоге.
Разделение по темам. Чем больше пользователей в группе, тем больше количество обсуждаемых тем. Большинство тем интересны ограниченному числу пользователей группы. Подход здорового человека заключается в том, чтобы создавать тематические группы и включать в них только тех, кому тема интересна – такая изоляция уменьшает «информационный шум» от ненужного контента. Но на практике это приводит к полному хаосу. Например, имеем 10 чатов по работе, 4 чата детского сада, 3 чата многоквартирного дома и так далее. И всё это в одном пространстве имён, поэтому мы начинаем путаться в чатах. Они уползают вниз списка, забываются, потом создаются дубликаты забытых чатов, но туда забывают добавить всех пользователей. Если же количество участников примерно от полсотни и выше, то никакие параллельные чаты уже не создаются – слишком сложно поддерживать актуальный список участников. Ведется один супер-чат, содержащий все вопросы жизни, вселенной и всего такого. Результат: большие группы в мессенджерах становятся «токсичными»: контент неинтересен из-за большого количества мусора, мы присутствуем в группах только из-за необходимости.
Избыточные нотификации. Каждому знакома ситуация, когда нам приходит слишком большое количество нотификаций различных мессенджеров. Рассмотрим пример. Пусть, у нас команда из 50 человек и каждый пишет в общий чат 5 сообщений в день. Тогда каждый получит по 50*5=250 нотификаций. Если считать, что для просмотра сообщения мы отвлекаемся на 30 секунд, то 250 нотификаций съедают 250*30=7500 секунд, что составляет 2 часа! А всю команду нотификации отвлекают на время 7500*50=375000 секунд или 104 часа! Вдумайтесь: 104 человеко-часа в день или 13 человеко-дней каждый день! Это 26% ресурсов команды. Такие большие числа получаем потому, что количество людей (50 человек) в чате входит в итоговую формулу квадратично (каждый нотифицирует каждого):
В реальности все несколько лучше, так как сообщения обычно появляются и читаются пачками. Но суть проблемы понятна: квадратичный рост потерь времени команды на нотификации. Кэп подсказывает два способа решения, но оба плохие:
Discord: начало
Теперь переходим к Discord. Прежде всего заметим, что в Discord есть два режима или, скорее, «вида»: назовем их «обычный» и «сервер». Они существуют параллельно и имеют разные цели. В «обычном» виде Discord – это такой же обычный мессенджер, как и все остальные. Даже с более ограниченными возможностями, чем тот же Skype:
Сервер
Чтобы работать с сервером, надо этот самый сервер иметь. Для определенности будем считать, что мы сотрудники стартапа «Рога и Копыта», поэтому наш сервер будет называться «РК». Создаем сервер путем нажатия на кнопку с большим знаком «+». Сервер – это уютное место, где будет проходить всё наше корпоративное общение (кроме 1-на-1, которое в «обычном» виде, вне сервера). Пользователи должны присоединиться к серверу по приглашению.
В левой панели сразу видим две новые сущности:
Теперь переходим к инструментам Discord, которые делают его эффективным для командной работы. Прежде всего это роли. Смысл в том, что мы настраиваем права доступа не для конкретных пользователей, а для ролей и даём эти роли людям. Список разных прав, которые может иметь роль, внушает: целых 32 пункта. Кроме того, у каналов мы настраиваем, какие права имеет роль в канале: чтение, написание, удаление сообщений и т.п.
Какие роли создавать – решаем сами. Роль соответствует некоему типичному набору действий пользователя. Например, на нашем сервере сделаем такие роли:
Каналы
Текстовые каналы на нашем сервере могут быть, например, такие:
Упоминания
Упоминания – ещё одна вещь, которая делает работу в Discord эффективной. Это когда мы пишем сообщение в текстовый канал, упоминая аккаунт с помощью специального синтаксиса:
Можно упомянуть роль:
А вот так можно упомянуть всех, кто есть в канале (любой из этих вариантов работает):
Тут вы можете сказать: «Ха! В Skype тоже можно упомянуть через @имя. И зачем упоминать всех, какой в этом смысл? Ведь сообщение и без того обращено ко всем».
Действительно, в Skype можно написать Vasya.Pupkin. Но в Skype вся польза от упоминания в том, что во всплывающем уведомлении будет добавлено, что «вас упомянули». Наверное, в этом есть смысл, но в Discord сделали лучше. Прежде всего заметим, что в Discord есть два вида нотификаций о новых сообщениях:
Поток сообщений в текстовых каналах не требует внимания, пока пользователь не упомянут.
Легко видеть, что такой подход решает описанную выше проблему избыточных нотификаций, если немного обучить пользователей правильному стилю работы. Например, такому:
И таких упоминаний в реальности очень мало, не более 2% сообщений. Обычно упоминают here когда задают вопрос не зная, кто конкретно может на него ответить. Все отвлекаются от работы и читают вопрос. Дальше люди, которым есть что сказать, остаются вести дискуссию, остальные возвращаются к своим делам. И не бойтесь, что here будет слишком много: лишний раз писать here в сообщении просто лень!
Также упоминаний не будет слишком мало. Хотя бы потому, что человек сам заинтересован позвать правильных людей упоминанием в своем посте, чтобы достичь нужного ему результата. Короче, всё это самобалансируется и получается норм. Что с остальными 98% сообщений? Их тоже надо читать, но не срочно. В удобное время с чашкой кофе прочитываем весь поток сообщений. Такое отложенное прочитывание не приводит к огромным потерям времени, как описано в начале статьи. Ведь читаем подряд, не переключая свой мозг между сообщениям и другими делами. И, что самое главное, сообщения не отрывают нас от работы.
Итого: проблема избыточных нотификаций полностью решена, и при этом обеспечено быстрое реагирование на важные сообщения.
А минусы какие?
Технические ограничения в Discord.
Стандартные возможности
В этой статье рассмотрены принципиальные отличия Discord от других мессенджеров, позволяющие значительно увеличить эффективность работы. А вот список мелких фич, которые типичны для мессенджеров и не являются чем-то выдающимся:
А еще есть.
Боты и возможность написания своих ботов. Но это уже совсем другая тема.
Итого
Discord – это в некотором роде мессенджер 2.0, имеющий средства для эффективного общения больших групп пользователей, в том числе и в корпоративном применении. Создатели программы не побоялись выйти за рамки парадигмы обычных мессенджеров – и получилось неплохо. И в то же время Discord не конкурент обычным мессенджерам, у него своя экологическая ниша. Ведь у простых пользователей, не айтишников и не геймеров, наступает шок и трепет от необходимости администрирования и непохожести на привычные программы.
Надеюсь, информации в статье достаточно, чтобы решить, надо вам это или нет.
UPD1: Комментарий JustDont:
Перед тем как советовать дискорд для контор, нужно обязательно упоминать о том, что вообще-то нужно внимательно честь Discord Privacy Policy, в которой вполне себе английским или русским по белому написано, что Discord собирает всё, что вы ему отправляете. В том числе и всю вашу переписку, обратите внимание. И совершенно не обещает её шифровать и вообще как-то беречь её конфиденциальность от самих себя. И есть ряд сценариев, в которых эта собранная информация вполне может уйти куда-то, куда вам не очень хочется, чтоб она ушла. И нужно оценивать эти риски.