Система распределенной обработки задач на нескольких компьютерах
У нас есть сервис. Сервис реализован на базе .NET 4.5. Состоит из.:
Web-часть (пользовательская и админская панели, а также API).
Распределенная система для обработки запросов API. Реализована на базе RabbitMQ, v3.6. Общая архитектура отображена здесь https://drive.google.com/file/d/0B1JwhoEWV0zDVUQ1OE1UeG5TSlE/view?usp=sharing . Все части работают под управлением системы Windows.
Работа распределенной системы
Сервер управления обработкой задач раздает задачи обработчикам. В качестве параметров передается тип задачи, а также Runtime параметры (специфические для конкретной задачи). Обработчик, который взял задачу,- выполняет задачу и возвращает текстовый ответ(результат работы).
Проблема
Проблема в том, что при одновременной передаче 3х и более задач(от сервера к обработчикам) происходит задержка(зависание). Т.е. при тестировании на 2х обработчиках и одновременно поставленных 2х задачах проблемы нет, когда у нас 4 обработчика(клиента) и мы ставим одновременно 4 задачи сервер как будто не справляется. Если сделать задержку в 0.5-1с и отправлять задания по очереди - такой проблемы нет. Возможно RabbitMQ не лучшая технология для такой задачи либо ошибка где то на нашей стороне.
Варианты решения которые видим
найти траблы существующего
взять другое решение
Просьба в заяввках оставлять свои предложения и желательно сразу уточнять ориентировочную стоимость и сроки.
-
8562 275 0 Добрый день! Готов посмотреть, в чем там проблема. Скорее всего, в коде, который вычитывает данные из очереди. Цена указана за один полный день работы. Если там простой фикс, то хватит 1 дня. Если надо будет реализовать многопоточную логику чтения из очереди - то это дня два. Ну и вы должны понимать, что использование очередей - это асинхронный механизм, и нельзя требовать от него скорости отклика, как у синхронных запросов.
О себе: более 10 лет опыта разработки под .NET (в основном, энтерпрайз сектор, сложные системы). Конкретно с RabbitMQ не работал, но работал с очередями в Azure/Amazon
-
1. Без досмотра кода оценить стоимость/сроки сложно...
2. Конкретно с RabbitMQ я не знаком, но судя по тестам (пример от 2012 года) даже с сохранением на диск скорость обработки 4+ тыс. сообщ./сек., из чего можно сделать вывод, что проблема где-то в вашем коде.
-
Пф, так вы раздаете задачи или сообщения? И что увас за система а-ля "франкенштейн" со сторонними решениями, которыми вы не в состоянии управлять? Вы или найдите разработчика под RabbitMQ, если у вас доступ к их технологиям (где четко прописаны их возможности), или разрабатывайти свою систему управления, если есть свой подходящий сервер. Очереди и ситемы массового обслуживания в универах преподают на первых курсах. А вообще сделайте втык менеджерам за атаз типа "а эта технология нам точно нужна?".
-
P. S. С такими проблемами ищите АСУшника на пару с тестировщиком. Первый оформит по-человечески вашу систему от А до Я, а второй попробует определить дыры в существующей системе, чтобы не пришлось все переписывать с нуля. Я - не тестировщик, но помочь разобраться в общих решениях могу, чисто из интереса к ситуации.
-
Current freelance projects in the category C#
Протестировать небольшое приложение на С# и отловить багиЕсть программа(с исходным кодом) , которая производит замену текста в текстовом поле в windows, с авторизацией на сайте, программа небольшая но требует отладки. Так же ищу фрилансера, с которым можно будет работать в дальнейшем по доработке этой программы. По оплате, ожидю ваши… C#, Microsoft .NET ∙ 2 proposals |
Инсталлер для WPF проекта
13 USD
Создал приложение на WPF (Visual Studio 2022, .NET 7). Нужно иметь возможность: 1. превратить файлы приложения в пакет инсталляции (с возможностью задать иконку для инсталлера) 2. при установке инсталлер на компьютере пользователя запускает установку .net core 7, если он там не… C# |
Boot Assistance to VFS Visa CenterHello to everyone! Our team needs to create a bot that will be able to help people register for visa submissions in VFS visa centers. The main destinations that interest us are the visa centers in India. Therefore, it will be necessary to connect through the proxy, as well as to… C#, Bot development ∙ 4 proposals |
Snippet Zennoposter |
You need a C# andReact specialist to do a task on the site’s securityImplementing the security tasks of the site. Correction of errors and vulnerabilities and SQLI vulnerabilities This is the security of the site. Per<unk> partial knowledge of the reaction C#, Software protection and security ∙ 2 proposals |