Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Должны ли по предмету ООП изучать какой либо язык?

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

Худший ответ:
ООП в разных языках имеет небольшие отличия, допустим есть C++ с множественным наследованием, в джаве есть реализация множественного наследования уже через интерфейсы.
В целом если ты проходишь ООП то скорее всего уже знаешь базовый синтаксис языка на котором учишься, лучше конечно изучать по нему, но сама теория ООП подразумевает изучение предмета без кода. Когда я начинал на джаве то вникал в примеры по статьям в которых был тот же Php и вроде как проблем особых у меня не возникло с понимаем. Жёсткой привязки нет, но лучше конечно видеть явно примеры реализаций что бы понять предмет как можно глубже.
Вопрос: Как правильно формировать цену на создание чат ботов?

Лучший ответ:
ставим от фонаря
берут - повышаем
не берут - понижаем

Худший ответ:
Как обычно. Прикидываешь время работы и сколько ты хочешь за это время заработать. Дальше торг.
Вопрос: Как переносить учетные записи в домен?

Лучший ответ:
Как вариант: www.forensit.com/downloads.html

Худший ответ:
меняется с локальной на доменнуюИз вопроса:
Переименовываете Default User в Default User.temp
Профиль текущего пользователя в Default User.
Входите в домен и учётную запись в нем.
Из Default User создаётся копия с нужным именем.
Переименовываете Default User.temp обратно в Default User.
Вопрос: Как быстро развернуть у себя чужой проект на django?

Лучший ответ:
При помощи docker-контейнеров
Если разработчик проекта не криворукий (часто встречаются проекты где даже нет перечня зависимостей  типа requirements.txt) - то написание правильного docker-compose.yml  - спасет отца русской демократии )

К примеру что там у нас? БД?
смотрим DATABASES в settings.py проекта. Что там у нас? django.db.backends.postgresql?
Ок - подняли контейнер по имени postgres с постгресом. В переменных окружения передали пароль, пользователя, и имя БД. Прописали в settings HOST postgres и пр.
Что там дальше? кеш на redis?
Подняли контейнер с redis с именем redis - сделали соответствующее изменение в CACHES  в том же settings.py 
celery - worker и beat - разнесли по разные контейнеры с питоном
В одном стартанул стартанули что-то вроде
celery  -A имя_проекта worker
в другом
celery  -A имя_проекта beat
apache - чтобы стартовать в режиме для разработчика - он пока не нужен.. Можно стартовать чуть попозже когда с проектом более-менее разберетесь...

Нет тестовых фикстур и данных для БД? Не беда - вооружаетесь Faker и factory_boy к примеру. Накидываете по модели объект для создания фейковых сущностей - и вперед...

И так - несколько шагов - и у вас приложение которое начинает подавать признаки жизни - ну а далее - по симптомам...

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

Лучший ответ:
 какому именно из кучи других клиентов принадлежит это обращение
У роутера есть NAT таблица в ней соответствие SRC_IP:SRC_PORT -> DST_IP:DST_PORT так и узнаёт.

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

Худший ответ:
Потому что технология нат передает на сервер также всю инфу и о внутренней сети. Все просто.
Вопрос: Почему при умножении 1*2*3*4*5*6*7*8*9*10*11*12*13*14*15*16*17 получается совсем что-то не то?

Лучший ответ:
Попробуй long.

Худший ответ:
слишком большое число. не хватает памяти для хранения в переменной.
Вопрос: Как сверстать подобный блок на чистом css?

Лучший ответ:
Если SVG шка интересует то вот: https://codepen.io/topicstarter/pen/mdmeQWJ

Худший ответ:
Доброго.
В данном случае блок можно сверстать так:

 в процентах задаем ширину левому блоку (на картинке это где-то 60% от ширины всего блока)
 данный фон в левом блоке (включая круги и волны) делаем одной картинкой и вставляем фоном
 задаем левому блоку общий padding, например 20px
 все текстовые элементы и логотип верстаем обычным образом в блочном потоке

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

Лучший ответ:
Пример неудачный, здесь goto не нужен вообще.
Достаточно заменить его на break и обернуть те два оператора, которые он перепрыгивает, в проверку j == n.

Худший ответ:
За 20+ лет программирования на С ни разу при такой задаче не сталкивался с необходимостью использования goto. Операторы цикла в С настолько мощные, что запросто чуть подумав можно придумать, как от него отказаться. Вчитываться в код лень.
Вопрос: Не работает условие Python, SQLite как решить и почему?

Лучший ответ:
chat_verification = {message.chat.id}
check = cursor.execute(f"SELECT chat_id FROM chat_id_table WHERE chat_id ='{chat_verification}' AND verification = 1
Вооружайтесь принтами и смотрите что вы наговнокодили в этих двух строчках. 
Примерно каждый второй вопрос в SQLite сводится к ответу не используйте f строки в SQL запросах
И вы вообще осознаете какой тип данных у chat_verification?

В целом если 10 строчек кода требуют двух вопросов на хабре берите за привычку разбираться какими данными и типами данных вы манипулируете. Не работает - запускаете отладчик или принтуете и смотрите соответствуют ли данные и типы данных вашим ожиданиям.

Худший ответ:
1. chat_verification = {message.chat.id}
chat_verification - это множество из одного элемента, вместо простого значения. Зачем?
2.cursor.execute(f"SELECT chat_id FROM chat_id_table WHERE chat_id ='{chat_verification}' AND verification = 1")
Никогда не используй f-строки. С целыми числами прокатит, со строками - очень рискованно. Используй подстановку параметров.
cursor.execute("SELECT chat_id FROM chat_id_table WHERE chat_id = ? AND verification = 1", (message.chat.id, ))
3. check = cursor.execute(...
if check is True:
execute() вернёт ссылку на всё тот же cursor, независимо от запроса. Тебе нужно выбрать строку из этого курсора с помощью метода fetchone(). Метод вернёт или кортеж с одним значением chat_id, или None, если ни одна строка не удовлетворяет условию.
cursor.execute("SELECT chat_id FROM chat_id_table WHERE chat_id = ? AND verification = 1", (message.chat.id, ))
result = cursor.fetchone()
if result is None:
    print('Нет такой строки')
else:
    chat_id = result[0]
    print('есть результат:', chat_id)
Вопрос: Как сделать простейший чат на go?

Лучший ответ:
Есть gorilla websocket
у них в репе готовый пример чата есть

https://github.com/gorilla/websocket/tree/master/e...

вот пример с комнатами:
https://github.com/gorilla/websocket/issues/46#iss...

Худший ответ:
Пробуйте это , всё доходчиво обьясняно. Регистируйте конекты в массиве и отправляете сообщение от кого либо всём
Вопрос: Как найти таблицу в нужной схеме MySQL?

Лучший ответ:
Добрый день!
Думаю, что данный вопрос отпадет, когда вы познакомитесь с технологией ORM и с таким фреймворком, как например, Hibernate. Если вкратце, то там есть опция, которая при запуске проверяет наличие таблиц и в случае отсутствия оных, создает таблицы автоматически. Но как правило, на production таблицы автоматически не создают. 
Обычно, пишут sql скрипты, которые впоследствии мигрируются при помощи таких фреймворков, как например, flyway.
Таким образом, с учетом того, что вы работаете по принципу database first (т.е. вы создаете БД, схему и таблицу), то ситуации, когда не будет нужная таблица не должно быть. А даже если такая ситуация будет, то пускай выбрасывается исключение и приложение падает. Можете также ознакомиться с такими терминами. как database first, code first, model first.

Худший ответ:
что если я запущу программу, а нужной таблицы не будет?
Получите соответствующее сообщение об ошибке.

дошёл до такой функции
Сотрите срочно. Существование таблицы (вообще или в определённой схеме) проверяется запросом в INFORMATION_SCHEMA.TABLES.

SELECT TABLE_SCHEMA, TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
-- WHERE TABLE_NAME = 'my_table_name'
;

что если в другой схеме уже есть таблица с таким названием...
Ну допустим есть, и что?
Вопрос: Нормально ли это, что в режиме Strict-mode в React-приложении делается 2 запроса?

Лучший ответ:
Реакт придерживается концепции "чистых" функций. Т.е. таких функций, которые всегда дают одинаковый, предсказуемый результат при одинаковых входных параметрах. В режиме разработки, с включенным strict-mode реакт помогает выявить непредвиденные эффекты и состояния, возникающие в результате нарушения концепции, вызывая дважды все функции, которые он считает "чистыми". Как это работает?
Предположим, вы написали функцию, которая по сигналу "свет" - включает свет. Но если свет уже включен - функция его выключает. Вы довольны и счастливы - послали сигнал "свет" - свет включился, послали еще один сигнал "свет" - выключился. Но в режиме strict-mode - вы обнаружите, что свет не включается, потому что реакт шлет второй сигнал "свет", который выключает после первого сигнала! И опять, возникает вопрос - да зачем это нужно? А затем, что вы не можете предсказать результат действия сигнала "свет", не зная текущего состояния! Возникнет острая необходимость - включить свет, а вы не знаете - включен он сейчас или нет... Пошлете сигнал "свет", когда он включен - получите выключение.
Примерно такие варианты поведения выявляет strict-mode.

Худший ответ:
В строгом режиме каждый элемент рендерится дважды. Собственно, поэтому и запрос у тебя дважды отправляется.
Но это только в dev-окружении, на продакшене так уже не будет
Вопрос: Можно ли войти в интернет с одинаковым ip адресом, но если порт будет отличаться?

Лучший ответ:
читаем что такое NAT.

Худший ответ:
Для клиента порт не важен - все нормально будут работать.
Для сервера - важен и для каждого приложения нужен свой порт
Вопрос: Получать высшее образование по ИБ после колледжа или идти работать?

Лучший ответ:
Если есть возможность учиться (финансовая, например, то есть родители оплачивают еду, жилье и прочие потребности), то лишними знания никогда не будут. А еще ВУЗ это отличная возможность наработать связи и собственно в итоге найти через них работу.  

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

По поводу опыта - ценен релевантный опыт, то есть перекладывание бумажек в налоговой, конечно, даст запись в трудовой, но никак не поможет при устройстве на работу в области ИБ. Мало того, может вообще помешать, не все готовы брать "бухгалтера" на должность специалиста по ИБ, возникают вопросы, а чего ему не сиделось в той области, где до этого работал...

Краткое резюме:
1. Высшее образование скорее полезно, но не необходимо. 
2. Опыт работы лучше получать именно в той области, где плангируете работать.

Худший ответ:
Многое зависит от ВУЗа. Закончил год назад по той же специальности, только "10.05.03". В провинциях образование в сфере ИБ очень слабое, а вакансий в нормальные конторы без опыта немного. В любом случае, в дальнейшем в данной сфере понадобится корочка о высшем, а по данной специальности заочки действительно нет. Не забываем еще про военный билет и гос.тайну для работы в государственных органах и учреждениях.
Поэтому считаю, что лучше пойти учиться и параллельно искать работу.
Вопрос: Как запускать exe файл по расписанию через cmd?

Лучший ответ:
Планировщик виндовс

Худший ответ:
schtasks create
есть менее функциональная устаревшая at
Вопрос: Как сделать, чтобы письма не попадали в спам?

Лучший ответ:
Правильно. И будут попадать. Функция mail у вас отправляет письма без DCKIM подписей. Самый простой способ - слать письмо по SMTP. А чтобы не говнокодить - подключите Phpmailer или Swiftmailer

Худший ответ:
Подключи библу как уже было сказано, на сервере формируй токен который будешь помещать в бд и ссылку на твой контроллер в письмо впихни, при переходе на этот контр, отправляй значение в бд, при этом меняя значение с 0 на 1...
Вопрос: Можно ли узнать дату производства по серийному номеру?

Лучший ответ:
Зарегистрируйтесь на сайте микротика, зайдите по ссылке https://mikrotik.com/client/keyRequest и заполните поля Router Serial Number и Router Software ID, нажмите кнопку Reqest License, после этого в разделе со списком лицензий https://mikrotik.com/client/keyinfo  в папке "All your requested licence shares" будет таблица, в которой в колонке Issued будет дата выдачи лицензии для этого устройства. Эта дата и есть дата производства.

Худший ответ:
Попробуйте написать запрос в официальный суппорт Микротика. Возможно они дадут ответ как можно быстрее.
Вопрос: Как искать красивые по дизайну сайты по определенным сферам?

Лучший ответ:
Такой сервис есть


Сервис поиска дизайнов сайтов по сферам на руссом

Худший ответ:
Гляньте ТУТ
Вопрос: Выборка из нескольких таблиц одной структуры MySQL?

Лучший ответ:
Используйте штатное партицирование MySQL.
https://dev.mysql.com/doc/refman/8.0/en/partitioni...

Худший ответ:
Если известны имена таблиц - юнион. Если не известны - никак, или через извращения типа регулярки с выборкой из схемы.
Вопрос: На кого поступить?

Лучший ответ:
Лично мое ИМХО - 
Любое техническое образование, чтобы без труда читать схемы и набираться опыта. Даже университета не нужно.  Экономическое, я бы сказал, было бы более полезным.  Так как скорее всего, изобретателем вы не будете, а все будет сводиться именно к сборке и оформлению конкретно ваших подделок. 

https://radiostorage.net/161-ehlektrogitara/
https://samesound.ru/gear/70849-build-your-own-gui... 


Худший ответ:
1. Какие предметы (в том числе школьные) нужно знать?
Физику. Особенно про электричество, магнетизм, и электромагнетизм. Ещё про звук.
3.Какие это области науки? Электроника, Электротехника или что-то другое?
Да

И вот Финальный вопрос: На кого поступить чтобы изучать все что мне нужно(Специальность)?

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

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

Лучший ответ:
В банковской сети, обычно, есть сегменты к которым ограничен доступ со стороны локальной сети. Доступ к компам в этой сети имеет ограниченный круг лиц, помещения под своей сигнализацией и т.п. Они стоят за своим собственным фаерволом и помещены в отдельную VLAN, но поскольку из этой подсети может требоваться доступ к банковским ресурсам, то средствами фаервола разрешается доступ по определенным фиксированным адресам.

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

С удаленными офисами связь предпочтительно делать не через интернет, а на базе какого-то оператора связи (или нескольких) формировать собственную корпоративную сеть. Трафик в такой сети передается через ВПН в шифрованном виде. Если какие-то удаленные офисы невозможно подключить к корпоративной сети, то используют интернет + ВПН. ВПН по уму должен строится с использованием сертифицированных средств.

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

Худший ответ:
>Что нужно для защиты локальной сети банка?
Многое. Начинать с найма соответствующих специалистов :)
ЗЫ Касательно "лабораторной" - инфраструктура CA внутренняя потребуется: все самоподписные сертификаты оборудования, серверов и рабочих станций менять на собственного выпуска, инспекцию SSL на FortiGate делать,  VPN и 802.1X настраивать, и еще для многих вещей - в банке он есть в обязательном порядке.
Вопрос: Как работает асинхронность в пайтон?

Лучший ответ:
asyncio - это, скорее, как обойтись без многопоточности.
Она хорошо работает для ситуаций, когда большая часть времени потока выполнения уходит на ожидание ввода-вывода - например, на ответ по сети. Если у тебя есть что-то, что занимает CPU, или любая другая операция, выполняемая вне рамок ввода-вывода через asyncio - это остановит выполнение асинхронной программы.
Если на пальцах, то асинхронная программа состоит из отдельных корутин. Разница с потоками в том, что потоки переключает ОС, а корутины сами отдают управление, когда уходят в ожидание события (грубо говоря, когда делают вызов с await). Это упрощает синхронизацию корутин, так как ты точно знаешь, когда твоя корутина отдаст управление - меньше шансов налететь на состояние гонки из-за внезапного переключения. Опять же, переключение корутин куда более детерминировано, чем переключение потоков, так что "плавающие" баги встречаются реже.
Тело асинхронной программы - это рабочий цикл (т.н. реактор, он же loop), который проверяет выполняемые операции ввода-вывода, и возобновляет выполнение корутины, когда её операция завершилась. Когда корутина завершится или запланирует ещё одну операцию, она вернёт управление в цикл. Вот почему "задумавшаяся" корутина остановит всю программу.
Минус в том, что в отличие от многопоточности, нельзя просто вжжжжжжух и сделать код асинхронным. Он должен писаться как асинхронный с самого начала, с прицелом на исполнение в реакторе.

Худший ответ:
threading не умеет закрывать потоки, по этому такое решение с этой библиотекой, при закрытии окна запускается функция closer(). Она закрывает pyqt окно а потом читает процессы и убивает процесс php сервера.
#!/usr/bin/python3
# -*- coding: utf-8 -*-
from random import *
import sys,os,threading
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebKit import *
from PyQt5.QtWebKitWidgets import *
from PyQt5.QtWidgets import QApplication, QWidget, QMainWindow

port = str(randint(9000, 9999))
url = "http://localhost:"+port
comm = "php -S localhost:"+port+" -t app/"
icon = "app/icon.ico"
title = "Qt Web App"
dw = 1920
dh = 1080
ww = 800
wh = 600

def closer():
    app.exec_()
    os.system("ps -ef | grep \""+comm+"\" > .pid ")
    proc = open(".pid")
    proc = proc.readlines()
    for line in proc:
        line = line.split()
        pid = line[1]
        os.system("kill "+pid)
    os.remove('.pid')

def run_server():
    os.system(comm)

server = threading.Thread(target=run_server)
server.start()

app = QApplication(sys.argv)
web = QWebView()
web.load(QUrl(url))
web.setGeometry(int((dw-ww)/2), int((dh-wh)/2), ww, wh)
web.setWindowTitle(title)
web.setWindowIcon(QIcon(icon))
web.show()
sys.exit(closer())
Вопрос: Почему не меняется ip после вкл/выкл авиарежима?

Лучший ответ:
Потому что так захотел провайдер интернета. Адрес может меняться \ может нет. Это не влияет на услугу. Тем более Вы сидите на одном месте.
Как только начнете перемещаться по городу, переключаться между вышками, адрес 99% будет изменяться, хотя не факт

Для изменения IP адреса обычно покупается пачка proxy или vpn серверов

Худший ответ:
если есть возможность, установите рандомную смену MAC-адреса
Вопрос: Как теперь шарить принтер не открывая уязвимость PrintNightmare?

Лучший ответ:
Варианты вот такие:


Худший ответ:
В реестре в папке
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print
Создать DWord
RpcAuthnLevelPrivacyEnabled
со значением
0

Проблема уходит, уязвимость остаётся. Где-то читал, что есть разновидность этой уязвимости для атаки через интернет (не по локалке) - подтвердите/опровергните, кто может, пожалуйста
Вопрос: Как начать изучать ASP.NET Core?

Лучший ответ:
Привет!

Из тех, что есть в продаже, можно обратить внимание на эти книги:

Язык программирования C# 9 и платформа .NET 5: основные принципы и практики программирования, 10-е издание - тут есть некоторые основы и глава посвященная ASP.NET

ASP.NET Core 3 с примерами на C# для профессионалов, 8-е издание | Фримен Адам


Я пока не так глубоко в них зашел, но по стилю изложения там очень много практических примеров и кода отображено. Троелсен очень помог в свое время разобраться с ООП на примерах.

UPD: из-за того, что переводы затягиваются, книги/курсы на русском обычно отстают от актуальных версий ЯП и фреймворков.

Также, для практики можно прорешивать тестовые задания, которые присылают для отбора на стажировки/вакансии. Один из таких сборников можно найти здесь: https://github.com/Hexlet/ru-test-assignments

Худший ответ:
Есть серия переведенных курсов на Udemy,  с ASP.NET Core (Razor, MVC, Razor Pages) для .NET 5 и  .NET 6, с поддержкой от переводчика. Оплатить можете напрямую Переводчику,  он купит для вас доступ на Udemy, в конце еще получите сертификат, который не стыдно будет показать работодателю.  А также, получите доступ к доп. материалам.
Вопрос: Почему при получении данных они не заносятся в бд?

Лучший ответ:
Ошибка в том что колонка id не имеет значения по умолчанию. Если Вы хотите использовать автоматическую нумерацию (AUTO INCREMENT). то можете модифицировать таблицу следующим образом:
ALTER TABLE users ALTER COLUMN user_id ADD GENERATED BY DEFAULT AS IDENTITY;

sql editor online

Худший ответ:
в постгрес уникальные ключи делаются через
serial

https://flaviocopes.com/postgres-auto-increment-pr...

в новых таблицах просто указать
CREATE TABLE data ( id serial PRIMARY KEY NOT NULL, key varchar(100) NOT NULL, value varchar(250) NOT NULL);
миграция колонок типа integer в serial описана в

https://stackoverflow.com/questions/23578427/chang...
Вопрос: Как правильно подобрать комплектующие?

Лучший ответ:
Взять Ryzen 5600G и мать на b450. ОЗУ и SSD по оставшимся средствам. Встроенное видео в этом процессоре уже на уровне 1050ti, смысла тратить деньги на устаревшую видюху  нет.

Худший ответ:
Проц I5 9400F
Видюха Asus GTX 1050 ti - карта слабая потребляемая мощность не большая
ОЗУ Memory 16gb (ddr4/2666) - память лучше поставить по "шустрее" процессор позволяет. Как вариант DDR4/3200
Материнка H310m-k

Учитывая все выше сказанное:
"хз какой корпус, блок питания куллеры и т.д"
Корпус - любой куда это все хозяйсво поместится геометрически. С охлаждением 100% проблемм НЕ будет.
Блок Питания - любой обеспечивающий "Реальную" мощьность 200Вт (Красивый запас реальной мощьности - 1,5 раза).
То есть для такой системы нужен БП дешевый 600 - 700 Вт или "модный 80+" 400 - 500 Вт.
Кулер - любой тихий на мощность рассеивания больше 65 Вт. и который поместится в выбранный корпус.
Вопрос: Laravel очереди на другом сервере?

Лучший ответ:
Так джоб может использовать всё что угодно чтобы выполниться, как вы хотите чтобы это работало без кода? Если нужен сервис какой-нибудь, модель из базы достать, в базу сохранить и т.д.

Чтобы поднять очереди на другом сервере надо настроить общий редис и общую базу, тогда джобы будут балансироваться между серверами.

Но деплоить надо полноценно приложение на оба сервера.

Можно конечно сделать отдельные консюмеры на отдельном сервере чтобы там чисто один скрипт лежал, но это и будет работать вне ларавела полностью. Т.е. не сможете использовать сервисы, eloquent, модели и всё остальное из ларавела. В чем смысл.

Пора изучить деплой на несколько серверов. А точнее в принципе деплой автоматический поднять, а сколько там серверов надо развернуть ему пофиг.

Худший ответ:
На самом деле, джобы и должны запускаться в отдельных контейнерах. Взаимодействие идёт через кроликак и БД. При чём это может быть один и тот же монолит, не обязательно делить на микросервисы, все равно контейнеры с очередями не смотрят в веб через вебсервис.