Задать вопрос
  • На каком языке писать облачный сервер?

    2ord
    @2ord
    Языки программирования второстепенны в этом случае.
    Стоит сделать упор на межплатформенные решения для сбережения ресурсов.
    Программы-клиенты должны работать под разные виды устройств: мобильные, настольные и т.д. Для мобильных ОС потребуется реализовать для минимум двух платформ: iOS, Android. Реализовать можно на разных технологиях. Обычно это языки Java, Swift, Dart.
    Для настольных межплатформенных приложений нередко берут C++, Java.

    Такие сервисы должны быть рассчитаны на большое количество пользователей, трафика и хранимых данных.
    По большей части основные вызовы будут в построении масштабируемой системы на мощностях хостинга. Из обязательных языков почти наверняка будет присутствовать лишь SQL (работа с СУБД). Остальные как сложится.
    Потребуются специалисты: системные администраторы, DevOps, бэкенд, инф. безопасности. Ну и, конечно, инженеры-проектировщики (архитектор ПО) и те, которые будут управлять всеми специалистами.

    Потребуется построить также систему биллинга. Понадобятся аналитики данных (BI, Data Scientist, ...) для понимания управления направления развития компании и обратной связи.
    Ответ написан
    Комментировать
  • Существует ли инструмент для имитации различных проблем с базой данных?

    2ord
    @2ord
    https://github.com/Shopify/toxiproxy
    Toxiproxy is a framework for simulating network conditions. It's made specifically to work in testing, CI and development environments, supporting deterministic tampering with connections, but with support for randomized chaos and customization.
    Ответ написан
    Комментировать
  • Почему резко поднимается Threads connected при слабом росте нагрузки?

    2ord
    @2ord
    Нужно установить средства для мониторинга Mysql. Например https://www.percona.com/software/database-tools/pe...
    Ответ написан
    Комментировать
  • Как устранить ошибку при установке PostgreSQL?

    2ord
    @2ord
    Попробовать следовать инструкции по поиску неисправностей: https://wiki.postgresql.org/wiki/Troubleshooting_I...
    Ответ написан
    Комментировать
  • Как хранить файл в интернете?

    2ord
    @2ord
    Например, при помощи протокола S3. Файлы тогда хранятся (обычно) в облаке. Доступ к ним при помощи ключа API.
    Если достаточно однократно обновить файлы и всё, тогда достаточно воспользоваться сервисом AWS Lambda. Подходит для редкого/нечастого запуска программы.
    Уровень бесплатного пользования AWS Lambda включает 1 млн бесплатных запросов и 400 000 ГБ‑секунд вычислений в месяц.

    Другой вариант - использовать облачную СУБД вместо файлов. Если пойти немного далее, то использовать облачный хостинг.
    А если хочется сделать старомодно и небезопасно, то хватит и протокола FTP.
    Ответ написан
    Комментировать
  • Аналог JSON_TABLE в MYSQL, чтобы ключи были одним из столбцов?

    2ord
    @2ord
    Неужели нужно работать в цикле с каждой парой через JSON_KEY и JSON_EXTRACT, и только так формировать строки таблицы?
    Поскольку выбрана именно такая структура данных в JSON, то средствами SQL только так.

    Попробуйте

    [{"key": 1, "value: 2}, {"key": 2, "value": 4}]

    Такая структура позволяет использовать JSON_TABLE. Тогда получится список (id, key, value) с одинаковыми id.
    Однако, если исходя из задачи Как строить архитектуру БД, где у юзеров много полей? требуется получить список вопросов с их ответами по user_id, то проще раскодировать JSON на стороне клиента СУБД, в самой программе, занеся в соответствующие модели, без использования JSON_TABLE.
    Ответ написан
    2 комментария
  • Существуют ли бесплатные конвертеры текста на русском языке в речь?

    2ord
    @2ord
    Festival
    Ответ написан
    Комментировать
  • Как задать нужное кол-во итераций?

    2ord
    @2ord
    Тот код-недоразумение, что генерирует passwd, стоит заменить на
    SecureRandom.hex(n)
    Ответ написан
    Комментировать
  • Как создать репозиторий с софтом на флэшке или в папке (инсталляшки)?

    2ord
    @2ord
    Автоматизация - обычно это написание скриптов на batch, PowerShell, в которых описаны порядок выполнения действий и всякие манипуляции.
    Ответ написан
    Комментировать
  • Компрометация API ключа mailgun, какие могут быть последствия?

    2ord
    @2ord
    Что будет если ключ будет скомпрометирован?
    Результат может быть разным, в зависимости от того в чьи руки попадет.
    Рассылка спама от чужого имени и пр.
    Ответ написан
    Комментировать
  • Как правильно в RoR реализовать систему уведомлений?

    2ord
    @2ord
    Comment
    • id
    • author_id
    • body
    • commentable_type (Article, Post, ...)
    • commentable_id
    • is_hidden (скрывать, если модератор или автор удалил)

    t.references :commentable, polymorphic: true

    Like
    • id
    • author_id
    • likeable_type (Article, Post, Comment, ...)
    • likeable_id
    • points (+1,-1)


    Удалять лайки не нужно. Собирать все +1 и -1 вместе и затем считать их сумму. Подсчёт лайков не обязан быть моментальным и точным 100%.
    Когда срабатывает коллбэк after_update, не обновлять сразу, а отправлять событие в очередь. Воркер подхватит событие и обработает его. Проверять время последнего обновления и если превысило, скажем, 1 минуту (чтобы не нагружать СУБД), обновить счёт.
    Таблицу уведомлений - по аналогии с comments.
    Ответ написан
    Комментировать
  • Стоит ли сейчас учить язык D?

    2ord
    @2ord
    Стоит хотя бы рассматривать возможности тех или иных разных языков, даже если они и не будут использоваться на практике. К "попсовым" ЯП всегда можно вернуться.
    В свое время меня заинтересовал язык Оберон и мне понравились некоторые его концепции. В целом, изучение всего нового всегда расширяет кругозор. Со временем оказалось, что некоторые концепции этого языка были заимствованы языком Go, что пригодилось на практике.
    Ответ написан
    Комментировать
  • Как перевести данные с бинарного формата?

    2ord
    @2ord
    Описать структуру данных в Protobuf согласно инструкции и сгенерировать код на Це++.
    Ответ написан
    Комментировать
  • Как совместно с коллегой править код в среде Visual Studio?

    2ord
    @2ord
    Непонятно зачем это нужно. Но если очень хочется, то проще всего чтобы кто-то один (ведущий) работал в любой удобной IDE и делился экраном (screen sharing) через Zoom, Slack и пр. А другие разработчики могут либо диктовать код, либо отправлять куски через чат.
    Но такой вариант подойдет разве только на этапе проектирования.
    Ответ написан
    Комментировать
  • Почему большая нагрузка на диски NVME?

    2ord
    @2ord
    Если нет доверия к atop, то можно проверить другими инструментами.
    В случае цифр, схожих с atop, получим подтверждение. Иначе - опровержение.
    Примечание: только если проблема с данными по NVMe не является известной разработчикам этих инструментов.
    Ответ написан
    Комментировать
  • Можно ли обновить ruby application просто скопировав нужные файлы?

    2ord
    @2ord
    Нужно скопировать файлы и перезапустить процесс приложения.
    Если изменения в схеме СУБД, то они требуют предварительного запуска команды миграции.
    Ответ написан
    Комментировать
  • Улучшаться ли позиции, если изменить страну хостинга?

    2ord
    @2ord
    Гипотезы нужно проверять. Для этого можно развернуть сайт на другом ДЦ и % трафика перенаправлять на него. Спустя некоторое время сверить с показателями до этого.
    Позиции SEO могут улучшиться, если будет быстрее первичная загрузка веб-страниц. Если раздавать assets (CSS, JS) через CDN географически близко к аудитории, то этого, возможно, достаточно.
    Зависит от того что за контент на сайте. Если это видео, музыка или что-то другое тяжелое, то стоит переезжать к своей аудитории. Иначе просто CDN поближе.
    Ответ написан
    Комментировать
  • Как DAT конвертировать в другой формат?

    2ord
    @2ord
    Если разделителем текстовых данных является табуляция, то пробовать импортировать в Excel как TSV (tab separated values) или как fixed column width. Если запятые, то как CSV.
    Ответ написан
    Комментировать
  • После смены убунту 14 на убунту 18 перестал запускаться bundler что делать?

    2ord
    @2ord
    1. Нужно содержимое Gemfile.
    2. Прежняя архитектура и нынешняя одинаковы? Обе x64?
    Обычно при обновлении версии ОС меняются номера версий системных библиотек, от которых зависят gem (mysql и подобные). Поэтому требуется переустановить таковые, один за другим. Требуется некоторое понимание в пакетах Линукса.
    Ещё версии bundler могут быть разными и в конце Gemfile.lock можно убрать секцию с указанием той версии.
    Ответ написан
    Комментировать
  • Где хранить временный PinCode?

    2ord
    @2ord
    Необходимо генерировать не короткие PIN-коды, а такие, чтобы не возникало конфликтов. Что-нибудь типа UUID.
    Ответ написан
    Комментировать