Search
Write a publication
Pull to refresh
66
4
Макс Вязников @ha7y

IT предприниматель

Send message

GPU сервер для FLUX и ComfyUI: Как выбрать железо для моделей нового поколения и не переплатить

Level of difficultyEasy
Reading time7 min
Views752

Генеративные нейросети (FLUX, ComfyUI, Stable Diffusion) — мощный инструмент для бизнеса, стартапов и разработчиков. Но чтобы добыть золото, нужна правильная кирка (подходящий сервер с GPU). Пока многие все еще обсуждают Stable Diffusion, на сцену выходят новые, более эффективные архитектуры, такие как FLUX. Выбор сервера для них — это минное поле: можно потратить тысячи долларов на избыточное железо или застрять с машиной, которая «не тянет» ваши задачи.

Эта статья — ваше руководство по выживанию в мире SD 2025 года. Мы честно разберем, какое железо вам действительно нужно для работы с FLUX, ComfyUI и дообучения моделей нового поколения. Никаких завышенных требований — только практика.

ОК, если без броских фраз, то мы помогали клиенту, сведущему в ComfyUI и FLUX запустить сервис под Ubuntu и сделали скрипт под его требования. Решил им поделиться, а ChatGPT помогала описать детали, за что я прошу меня простить 😇.

Читать далее

Colocation в десктопном ЦОД вместо Hetzner [cheapdc.ru]

Level of difficultyMedium
Reading time5 min
Views6.4K

Опыт создания дата-центра от серверов на квартире у тёщи до локации на оборонном заводе с промышленными UPS’ками и гигабитным интернетом, описал в статье «История одного домашнего дата-центра».

Сегодня расскажу продолжение: выделенные серверы на десктопном железе, стойки под них, копание в законы про хостинг, колокейшн, дата-центры в контейнерах.

Читать далее

История одного домашнего дата-центра

Level of difficultyMedium
Reading time9 min
Views37K

История о создании домашнего дата-центра от 0 серверов (только посадочная) до сотни (ещё нет) за 1.5 года. Через интернет в новостройке, перепрошивку UPS и собственные стойки для десктопного железа к балансу отказоустойчивости с ценой и планам на будущее.

Вся история

SQL Insert Injection в одном интернет магазине

Reading time13 min
Views59K

Давно на Хабре не звучали истории про SQL injection. А уж рассказов из жизни про SQL INSERT injection вообще очень мало. Поэтому расскажу свою.
Лирическое вступление
Лирическое вступление

Всё началось с моего желания купить себе нечто недешёвое в разборном виде в интернет-магазине A.B.ru фирмы B. После оформления, связи с менеджером по электронной почте, получения посылки и обзора её содержимого оказалось, что некоторых метизов очень не хватает. Полного перечня всего необходимого не было, лишь список болтов, гаек и шайб. Я начал сборку, дойдя до того места, где без отсутствующих болтов уже никак не обойтись. Поэтому мною было скурпулёзно составлено описание не найденных метизов и выслано электронным письмом той же девушке-менеджеру, с которой мы общались. К чести магазина стоит сказать, что практически всё необходимое было выслано второй посылкой. Поэтому я начал сборку, загоняя в дальний угол своего разума опасения о том, что может отсутствовать что-то ещё. Но, дойдя до финишной прямой, оказалось, что примерно 1/4-ой часть устройства не хватает в принципе, судя по фотографиям из руководства и здравому смыслу. Поэтому за первым письмом о недокомплекте последовало второе, куда более обширное, а сборка отложена.
Когда прошла вторая неделя ожидания, мне удалось убедить себя в том, что девушка-менеджер вышла в отпуск. Поэтому я переслал ей письмо двухнедельной давности ещё раз и перешёл к поиску других каналов электронной связи — очень уж не хотелось звонить в Москву. В первую очередь тоже самое письмо было отправлено на общий эл-адрес A@B.ru, на что был получен мгновенный ответ: почтовый сервер отказывается принимать письмо из-за переполненного ящика получателя <мужик>@B.ru. Тогда была найдена форма обратной связи на сайте — последняя ниточка соединяющая меня на текущий момент с интернет-магазином. В первую очередь я описал проблему переполненного почтового ящика и вставил сообщение об отказе доставить письмо, которое содержало в себе одинарные кавычки…

Начало

На попытку отправить отчёт об ошибке через форму обратной связи, на пару секунд на странице появилась ошибка, в которой угадывался голос MySQL. Поэтому я открыл консоль браузера, повторил запрос и заглянул в ответ сервера:
Читать дальше →

Потеря точности из Double во Float или «Куда пропадали копейки?»

Reading time7 min
Views56K
Преобразование чисел из одного типа в другой обычно ведется таким образом, чтобы не потерять лишних чисел, т.е. из меньшего типа к более вместительному. Но что, если предыдущий разрабочик использовал конвертацию из Double во Float и стали пропадать копейки в отчетах?
В статье приводится изучение конвертации плавающих чисел в Java:
    99999999.33333333 -> 100000000.0000000
    98888888.33333333 ->  98888888.0000000
     2974815.78000000 ->   2974815.7500000

Давайте разберемся, к чему приводит такое преобразование и почему все происходит именно так. Ведь казалось бы, раз используемые в проекте числа далеки от максимальных значений типов float и double, то конвертация его из первого во второй не должна повлечь за собой отрицательных последствий в большинстве случаев.
Читать дальше →

Проработанная идея алгоритма двусмысленного шифрования

Reading time5 min
Views28K
Весьма красочно иллюстрирует размышления на тему шифрования изображение с xkcd.com.



Но если продолжить размышления и попытаться решить проблему методами ИТ, то может родиться нечто интересное. Читателям предлагается статья-описание алгоритма, который мог бы помочь «тому с зашифрованным ноутом» с картинки выдать изображенным злоумышленникам пароль без потери важной информации. Разумеется, для этого ему пришлось бы хорошенько подготовиться, помнить несколько паролей и постоянно испытывать недостаток свободного места на компьютере, т.к. изложенный алгоритм в этом плане может быть прожорлив (если владелец захочет снизить риски быть уличенным во лжи).

Итак, если кратко, то владелец «такого ноута» при использовании изложенного алгоритма будет помнить несколько паролей, каждый из которых является ключом к своему «сейфу» (контейнеру файлов). Владелец определяет то, как распределить информацию среди контейнеров. Соответственно, он может создать несколько подставных контейнеров с заведомо ложной информацией. Итогом проиллюстрированных угроз может стать выдача пароля от одного из таких «сейфов». В случае, если злоумышленники хорошо знакомы с излагаемым алгоритмом, можно, например, выдать еще 1 или 2, и/или сказать, что больше контейнеров в этом архиве нет, а все остальное — случайная информация.
Подробное описание предлагаемого алгоритма

Компонент для интеграции строк Ext.grid.Panel с Ext.toolbar.Toolbar

Reading time4 min
Views5.7K
В рамках создания административной части одного из проектов, мне посчастливилось разработать довольно стройный компонент, элегантно дополняющий достаточно богатый функционал библиотеки ExtJS 4.

Пример использования: http://siterra.org/examples/rowtoolbar.html
Репозиторий: https://github.com/siterra/RowToolbar
Тестировался с ExtJS 4.1.1a.

Читать дальше →

Генератор надежных и запоминаемых паролей на Javascript

Reading time3 min
Views16K
image
Представляемый генератор паролей создает относительно легко запоминающиеся и, в тоже время, трудноподбираемые пароли. Основная идея состоит в том, что пароли генерируются на основе слогов и поэтому выглядят как слова или словосочетания. Для лучшего запоминания используются заглавные буквы в начале каждого слога.

Проект на Google.Code:
code.google.com/p/jspassgen/downloads/list
Пример работы можно посмотреть здесь:
бизнес-книги.рус/ext/jspassgen/example.html
Читать дальше →

NetBeans в Java Real-Time

Reading time2 min
Views5.2K
nb
NetBeans — очень удобная для разработчика среда, обычно отпугивающая своей тормознутостью, т.к. громоздка и написана на Яве. Что ж, будем надеятся, что однажды все наладится, а пока посмотрим, как эту ситуацию может исправить Real-Time Java.

Запуск NetBeans в JavaRTS

С днем рождения, PHP!

Reading time1 min
Views2.7K
phpВ 1994 году Расмус Лердорф (Rasmus Lerdorf) создал набор скриптов на Perl/CGI для обработки шаблонов html файлов своего онлайн-резюме. Но когда функционала и скорости Perl перестало хватать, Расмус переписал интерпретатор на C, назвав его PHP/FI (Personal Home Page / Forms Interpreter).

8 июня 1995 года, 14 лет назад, вышел PHP/FI 2.0 — первый публичный релиз.

В общем, поздравляю, PHP! Меньше глюков, больше секурности и ООП-а в головах новичков!

Очистка локального репозитория от старых пакетов

Reading time2 min
Views6K
Ситуация, когда в кэше накапливается несколько гигабайт пакетов, думаю, известна многим. Так же как и стандартное решение — удаление неустановленных пакетов
$ apt-get clean
Команда очистит директорию "/var/cache/apt/archives/", удалив все, а
$ apt-get autoclean
удалит не только старые версии пакетов локального кэша, но все, которые больше не доступны для скачивания.

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

Information

Rating
2,057-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity