• Понятность против оптимальности - что лучше?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    понятнее всегда лучше, тк это позволяет в дальнейшем развивать код, у которого ВСЕГДА короткий жизненный цикл, тоесть вы его будете не один раз переделывать и переписывать, и в рамках этого понятность предпочтительней чем сиюминутная "эффективность" которая в длительной перспективы никогда не эффективна.
    Ответ написан
    Комментировать
  • Упало дерево. Его касается кабель электричества. Можно ли трогать дерево?

    @lonelymyp
    Хочу вылезти из минуса по карме.
    В принципе при таких ситуациях автоматика должна обесточивать линию.
    Но сами понимаете, бывает по разному, возможно кто-то отключил автоматику или она неисправна.
    По этому
    1. Без паники, ничего особенно страшного не произошло.
    2. Близко не подходить и своими силами не пытаться убирать лежачее дерево или провода.
    3. Позвонить в МЧС и сообщить о ситуации, возможно они ещё не в курсе и им это не интересно, но они будут вынуждены зафиксировать звонок и предпринять какие-то действия.
    Ответ написан
    Комментировать
  • Упало дерево. Его касается кабель электричества. Можно ли трогать дерево?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    Не трогай ни в коем случае!
    И даже не подходи близко!
    Есть понятие "шаговое напряжение" - убьёт за несколько метров от дерева!
    Ликбез: https://ru.wikipedia.org/wiki/%D0%A8%D0%B0%D0%B3%D...
    Ответ написан
    Комментировать
  • Как организовать хранение аудиофайлов для серверного проекта?

    @raiboon
    Просто хранить на жёстких дисках - неудобно и не сильно надёжно.
    Для кого разрабатывали ceph, minio, Gridfs, riakcs, etc?

    В целом, если есть возможность, то лучше s3 или аналоги от конкурентов.
    Но если хотите иметь полный контроль над инфраструктурой, то просто выберете подходящее решение.
    Ответ написан
    1 комментарий
  • Какой формат для передачи данных(объектов/списков) использовать при передаче через сокет?

    SerafimArts
    @SerafimArts
    Senior Notepad Reader
    Если нужен самый простой вариант, то да, как верно выразились выше: JSON.

    Ещё можно взять BSON, или Msgpack. Они будут эффективнее, но сложнее для отладки.

    Ещё, в в качестве самого корректного варианта я бы предложил Protobuf. Но стоит учитывать, что он сложнее описанных выше вариантов.
    Ответ написан
    Комментировать
  • Хочу чтоб сайт обрабатывался с помощью Apache поднятого в docker как реализовать?

    shabelski89
    @shabelski89
    engineer
    Гуглите docker compose, Link
    Ответ написан
    Комментировать
  • Нужна ли веб-программисту высшая математика?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Нет, высшая не нужна. Обычная геометрия пригодится при работе с картами. А так в абсолютном большинстве школьного уровня более чем достаточно, главное чтобы логика хорошо работала.
    Ответ написан
    Комментировать
  • Как найти причину падения \ замедления работы сервера с PostgreSQL?

    Melkij
    @Melkij
    PostgreSQL DBA
    весьма мощный сервер (8gb

    Дааааа? А я думал дохленькая виртуалочка. Довольно средние железки на 256гб тогда что?

    На тяжелые запросы не грешу, т.к., во-первых, билд запросов на 100% отдан ORM (Eloquent, Lumen), и возможность кривыми руками написать какой-нибудь count(*) сведена к нулю

    Ха. Хахахаха. Хорошая шутка.
    Самый лютый бред вместо запросов делают именно ORM.

    Выкручивать настройки логирования, в момент проблемы смотреть хотя бы вот это: https://github.com/dataegret/pg-utils/blob/master/...
    Ставить какой-то мониторинг, умеющий мониторить базу.
    И смотреть что именно делает база и чем занято железо в момент проблемы. Особенно I/O. process title бы хоть сохранили/написали. Там и то продублирован command tag.
    Ответ написан
    Комментировать
  • Когда язык может стать узким местом?

    @rPman
    Язык почти никогда не создает проблем со скоростью, но их создают инструменты и библиотеки, которые используют разработчики, чтобы облегчить себе жизнь.

    И на php (phpreact) можно написать приложение, обрабатывающее 10к запросов в секунду на одном процессоре, а можно на nodejs (javascript) написать асинхронное приложение, которое штатным распаковщиком gzip будет тратить 99% времени на распаковку gzip а потом оставшуюся половину на копирование массива с данными (из-за чего скорость на порядок ниже php получается, реальный пример простой обработки БОЛЬШОГО количества упакованных текстовых дампов)

    Если же у вас проблемы создает обработка данных, пишите критичные вещи на c++ и подключайте модулем.
    Ответ написан
    Комментировать
  • Когда язык может стать узким местом?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Во-первых, язык влияет на производительность программистов, а не программ. Узким местом может стать платформа, в вашем случае виртуальная машина CPython. Но при разработке сетевого ПО в целом и web-приложений в частности главный тормоз - это ввод/вывод. Издержки на него на порядки превосходят издержки на интерпретацию, так что последняя практически не влияет на производительность. В то же время CPython хорошо справляется с вводом/выводом с помощью Asyncio и способен решать проблему c10k.

    Во-вторых, это зависит от того, что именно делают ваши микросервисы с каждым запросом. Например, для обычного интернет-магазина на очень синхронном Django 300 rps - это вполне обычная нагрузка, о которой не стоит беспокоится, если в команде разработчиков нет умственно отсталых и криворуких.
    Ответ написан
    Комментировать
  • Какую справедливую формулу можно использовать для вычисления истинной симпатии (лайки) к ответу на Тостере?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Никакую. Все выводы из наблюдаемого поведения - субьективны. Реальность из субьективного восприятия получить невозможно. Какой метод рассчета Вы бы ни применили - вы получите субьективную оценку. Т.е. такую которая будет нравится Вам. Но никак не будет отражать реальную суть вещей.

    Вот Вам мысленный эксперимент. Представьте у Вас есть плагин который для Вас на Вашем ответе всегда показывает самое большое количество лайков. Независимо от реальной картины. Вы бы согласились на такую поддельную реальность? Наверное нет? Так что же Вами движет? Чувство несправедливости? Жажда познаний? Вы хотите понять, что делает ответ лучшим? Это бесполезно...

    Вот Вам еще один мысленный эксперимент. Представьте себе вы поймете как писать ответ так, чтобы он был отмечен лучшим. Будут ли данные по такой схеме ответы действительно лучшими или они станут просто собирать максимальное количество лайков? А если есть схема по которой можно дать действительно лучший ответ значит мы открыли универсальный способ познания. Нет? Значит остается только второй вариант. Получится просто ответ с большим количеством субьективной поддержки со стороны читателей. Это только ухудшит ситуацию, люди будут писать ответы ради одобрения окружающих. Вопрос уйдет на второй план. Платформа погибнет.

    Вот Вам пример из другой области. На литературных порталах можно прочитать разнообразные, порой полярные отзывы о книге. Есть ли математический метод который скажет, стоит мне читать эту книгу или нет? Способ один - почитать и узнать. Какую бы вероятностную уверенность ни выдал рекомендательный алгоритм в том, что мне эта книга понравится, она мне может не понравиться. И наоборот.
    Ответ написан
    3 комментария
  • Есть ли разница между энергопотреблением kde/gnome, xfce/mate?

    @fsduiwe
    Конечно есть
    kde/gnome жрет намного больше ресурсов чем xfce
    Я бы их так распределил по обжорству

    kde
    gnome
    mate
    xfce

    Кде использует видео карту
    Так же расход памяти больше

    От версии тоже многое зависит
    Ответ написан
    Комментировать
  • Как обрезать mp3-файл?

    Neuroware
    @Neuroware
    Программист в свободное от работы время
    Почему сразу не в блокноте резать?
    Если по сути вот
    ffmpeg -ss 00:00:30.00 -t 25 -i bar.mp3 -acodec copy bar-new.mp3
    режет с любой точностью любой файл который скормишь, даже видео
    Ответ написан
    1 комментарий
  • Какой тип поля mysql для быстрого поиска?

    @shevchenko__k
    Помогаю новорожденным web программистам
    Ответ написан
    Комментировать
  • Подойдет ли SSE или оставить WebSocket?

    bingo347
    @bingo347 Куратор тега Node.js
    Crazy on performance...
    И SSE и WS - протоколы поверх http, оба могут работать поверх http/2 и иметь мультиплексирование
    Но есть между ними и различия:
    WS обеспечивает двухстороннюю связь, после установления рукопожатия любая сторона может слать сообщения, протокол бинарный, все сообщения кодируются в бинарные message-frame, что требует доп библиотек на стороне сервера (на браузере такая идет в стандартном апи), зато позволяет передавать как бинарные так и текстовые данные
    SSE - односторонняя связь, только от сервера к клиенту, клиент может передать данные только в url при открытии соеденения, дальше вещает только сервер, протокол текстовый, если есть бинарные данные их придется обернуть в base64 (например), с точки зрения сервера - это обычный GET запрос, который сервер не закрывает, а просто шлет данные в http body в особом формате, делая периодически flush соединения (в идеале после каждого сообщения)

    Все остальное, вроде комнат и т.д. - надстройки библиотек и не более
    В случае koa - по дефолту он завершает запрос когда зарезолвится промис из последнего middleware, для SSE придется это обходить
    Ответ написан
    Комментировать
  • Какую архитектуру бд выбрать для приложения с большим количеством аккаунтов?

    Immortal_pony
    @Immortal_pony Куратор тега MySQL
    100000 - это мелочи, плодить таблицы для каждого пользователя не надо.
    Ответ написан
    Комментировать
  • Много маленьких запросов к REST API или один большой?

    notiv-nt
    @notiv-nt
    Как ваше ничего? Да, моё тоже
    graphql это решает как бы,
    Rest не единственная возможность общения клиент-сервер
    Ответ написан
    2 комментария
  • Стоит ли использовать изоморфное приложение в высоконагруженном e-commerce проекте?

    @nrgian
    Все мои аргументы, в том числе, что JS априори медленнее Go и не поддерживает многопоточность, нет нормального ООП, и что не надо клиента грузить тоннами JS ради full AJAX, и вообще разработку станет вести легче и быстрее они оспаривают.


    В общем случае скорость языка в вебе не критична.
    Полно высоконагруженных проектов на медленных языках.

    Ибо основные задержки не зависят от языка - это сеть и СУБД (и пр. связанные с дисками операции).

    Впрочем, при нагрузке сервера очень большим числом клиентов и/или при очень сложной логике обработки (но не связанной с СУБД/дисками, а завязанной только на процессор) - скорость языка значение уже имеет.

    У вас - как? В чем именно узкое место?

    Ну а с точки зрения бизнеса - это все неважно на чем делать.
    Важно только сколько у вас свободных рук, знакомых с той или иной технологией.

    Если нагрузка на сервера - то даже и это может быть не критично, если для бизнеса целесообразно просто докупить серверов, ведь разработчики это недешево и это время пока они сделают.

    и что не надо клиента грузить тоннами JS ради full AJAX


    При несложной логике - да.
    При сложной логике - не все так очевидно.
    Ответ написан
    2 комментария
  • Стоит ли использовать изоморфное приложение в высоконагруженном e-commerce проекте?

    Robur
    @Robur
    Знаю больше чем это необходимо
    В долгосрочной перспективе - то которое будет легче поддерживать.
    Если ваш велосипед залить на прод, то остальным разработчикам надо будет во все это вникнуть, плюс поддержка и развитие, плюс все возможные будущие проблемы - все это надо будет пилить руками и с нуля. Так же архитектура должна быть хорошо подготовлена, и это вы должны явно показать, а учитывая что изначально все будут против - то и убедительно доказать.

    Если ваши фронтендеры сейчас наваяли какое-то приложение на ангуляре которое глючит и тормозит - то это в первую очередь проблема разработчиков. Если они ангуляр зафейлили, где все за них уже решено, куча доков коммьюнити и готовые ответы на любые проблемы то велика вероятность что ваш велосипед зафейлят с еще большей быстротой.

    Ваш подход лучше если:
    1) ваша нагрузка на самом деле превышает то что можно выжать из ангуляра, сделав все грамотно (бандлы, ssr, кеширование, оптимизация зависимостей и так далее)
    2) ваша фронтенд команда достаточно покачана чтобы пилить сложный проект на ванильном JS и выжимать из него больше чем можно выжать из фреймворка (это очень непросто)

    Что можно сделать:
    - определить реальные проблемы
    - определить критерии их решения (скорость, размер, page speed и так далее)
    - определить время за которое команда готова оптимизировать ангулярное приложение до нужных параметров

    Если не сделают - поднять вопрос еще раз, показав свой вариант.

    В любом случае - продавить велосипед будет сложно, есть достаточно серьезные объективные причины почему этого не стоит делать, польза должна заметно превышать минусы и это надо доказать всем.

    Плюс велика вероятность что ваши девелоперы хотят "модно-молодежно" на "современных технологиях" это уже человеческий фактор и он будет самым проблемным.
    Ответ написан
    4 комментария