Рубрика «сборка»

Серверные мощности в домашнем ПК - 1

Сказ о том, как собрать себе мощный комп с минимальным бюджетом.

В один прекрасный день мой коллега сказал, что на досках объявлений появились недорогие списанные мощные двухпроцессорные серверные материнские платы Supermicro X8DTL-i. В этом лоте на плате уже установлены процессоры, память и радиаторы, включай и работай. При этом формат платы E-ATX позволяет без особых проблем уместить её в обычный компьютерный корпус. Единственное, о чём стоит задуматься — это об охлаждении этих серверных мощностей.

Ценник на такой комплект на досках объявлений начинается от трёх тысяч рублей, что по карману даже школьнику. Это весьма интересное предложение для того, чтобы повозиться с серверным железом, да ещё и в домашнем компьютере. Я загорелся, и мне казалось, что никаких проблем возникнуть не должно, но как обычно, дьявол кроется в мелочах. Как и бывает в таких случаях, проблем посыпался ворох: охлаждение, расположение нестандартной матери, драйвера управления вентиляторов, организация электропитания.

В результате это всё вылилось в настоящий кастомный проект, который существует в единственном экземпляре. 3D-печать, ковыряние драйверов, разработка и пайка своих приспособлений. В общем, путь настоящего технаря. Читать полностью »

Алюминиевый профиль как универсальный ресурс для сборки чего угодно. Часть 1 - 1

Еще недавно профиль типа Т-слот (T-slot) был не самым популярным, но после того, как его стали применять в конструкции многих моделей 3D-принтеров, он появился везде и всюду. Теперь он используется для сборки тех же 3D-принтеров, лазерных резаков, станков с ЧПУ.

Кроме того, профиль подходит для изготовления верстаков, осветительных приборов, даже рамок для фотографий, если, конечно, такая мысль возникнет. Давайте чуть изучим возможности профиля и посмотрим, для чего, кроме чисто строительных нужд, его можно применять. В первой части рассматриваются особенности профиля и соединений.
Читать полностью »

Организация распределенного CI-CD с помощью werf - 1

werf — наша Open Source-утилита для сборки и деплоя приложений. Сегодня мы с радостью сообщаем, что werf научилась работать в распределенном режиме, начиная с версии v1.1.10 (доступна в каналах v1.1 alpha, beta, ea и stable). Для его подключения требуется минимум усилий.

Вот некоторые из примечательных особенностей нового режима:Читать полностью »

image

Microsoft готовится к завершению следующего обновления Windows 10 под кодовым названием «20H1» или Windows 10 версии 2004, которая станет доступна для пользователей в начале 2020 года. Вышла предварительная сборка обновления 19033.

Одновременно компания готовит версию 20H2 для тестеров.

В этот раз сборка появилась сразу в каналах «Ранний доступ» и «Поздний доступ». Новых функциональных возможностей в сборке нет, но Microsoft опубликовала солидный список исправлений, в то числе тех проблем, которые существуют уже не в первой сборке. Это проблема с античитерским программным обеспечением BattlEye, вызывающим синий экран смерти. Также компания отреагировала на сообщения об ошибке 80092004 при попытке установить сборку 19025.1052. Там заявили, что проблема была связана с конкретным обновлением и не должна возникнуть при установке сборки 19033. Читать полностью »

Введение

В данной статье речь пойдет о сборке и установке OpenCV 4 из исходных файлов с дополнительными модулями CUDA 10 на ОС Windows.

Я постарался включить сюда все тонкости и нюансы, с которыми можно столкнуться в ходе установки, и про которые не написано в официальном мануале.
Установка OpenCV + CUDA на Windows - 1
Читать полностью »

Меня зовут Илья Гольдфарб, я разработчик интерфейсов Яндекса. Мне интересно следить за тем, как развиваются инструменты для сборки фронтенда, поэтому я стараюсь изучать изменения в каждом релизе популярных решений.

В преддверии выхода пятой версии webpack я хочу рассказать о его, казалось бы, минорном релизе 4.26.0 от 19 ноября 2018 года, где неожиданно и без объявления войны изменилась версия минификатора по умолчанию. Раньше это был пакет UglifyJS, теперь же используется Terser, форк UglifyES — ветки UglifyJS, которая может сжимать и ES5, и ES6 код. Terser появился, когда основной майнтейнер отказался поддерживать и развивать UglifyES. Впрочем, UglifyJS тоже прекратил свое развитие с августа 2018 года, когда был выпущен последний релиз. В новом форке исправили некоторые баги и немного отрефакторили код.

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

Вся эта история подвигла меня провести маленькое личное исследование сжатия. Вот вопросы, которые я задал:

  • Что лучше сжимает ES5, Terser или UglifyJS?
  • Что быстрее загружается: сжатая версия ES5 от Terser или от UglifyJS?
  • Какая версия весит больше: ES5 или ES6? И как на это влияет TypeScript?
  • Большая ли разница между настройками по умолчанию и ручной настройкой?
  • А если не webpack? Кто выдаёт сборку меньшего размера, Rollup или webpack?

Читать полностью »

Сборка сервера: от заказа комплектующих до тестирования - 1

Что происходит, когда наш клиент заказывает сервер произвольной конфигурации? Насколько надежны серверы, собранные по индивидуальному заказу? Эти и другие вопросы мы сегодня подробно обсудим в новой статье.
Читать полностью »

Всем привет!

Компания Netсracker уже много лет разрабатывает и поставляет enterprise-приложения для мирового рынка операторов связи. Разработка таких решений достаточно сложна: в проектах участвуют сотни людей, а количество активных проектов исчисляется десятками.

Раньше продукты были монолитными, но сейчас мы уверенно двигаемся в направлении микросервисных приложений. Перед DevOps появилась достаточно амбициозная задача — обеспечить этот технологический скачок.

В итоге мы получили удачную концепцию сборок, которой хотим поделиться в качестве передовой практики. Описание реализации с техническими деталями будет достаточно объёмным, в рамках данной статьи мы не будем этого делать.

Читать полностью »

Devops в кровавом энтерпрайзе - 1
Вот к такому можно стремиться

У нас больше 350 своих разработчиков ПО и тестировщиков по всей стране, плюс мы часто взаимодействуем с инженерами и разработчиками заказчиков. Чтобы перейти на практическое использование devops, нам нужно было обеспечить не только внедрение методологии, но и приучить любимых российских заказчиков к некоторой базовой культуре. Просто пара диалогов для понимания:

— Почему у нас всё упало?
— Потому что вы откатали это на стенде, всё протестировали, а потом развернули на проде. Вот у вас настройка, которая не попала в инструкции, и жила только в голове старого админа.

Или:

— Почему не запускается по всей стране?
— Потому что у вас несколько десятков разных региональных инсталляций, каждая делалась руками, и на каждой разные конфиги. И ещё в паре случаев инженер ошибся.
— Поправите до завтра? Очень нужно! Только доступ удалённо мы вам не дадим.
— ..! Конечно, у нас есть команда высокооплачиваемых спецов, обожающих ездить на Дальний Восток. Нет проблем.

Читать полностью »

image Unified Parallel C (UPC) — это расширение языка C, разработанное для высокопроизводительных вычислений на крупномасштабных параллельных машинах. Язык представляет единую программную модель для систем с общей и разделенной памятью. Количество параллелизма фиксируется на старте программы, обычно с одним потоком на ядро процессора.

» Официальный сайт UPC
» Официальный сайт Berkeley UPC

В своё время возникли определенные трудности с разворачиванием UPC и отсутствием каких-либо подсказок по первым шагам ни в русскоязычном, ни в англоязычном сегменте интернета, кроме официальной инструкции INSTALL.TXT, которую пришлось переваривать.

Чтобы сей опыт не пропал даром, я решил написать статью по установке UPC в различных средах.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js