vishwjeet Ответов: 1

Решение для блокировки лидов в колл-центрах


У нас есть лиды, поступающие от пользователей нашего сайта непрерывно, около 5-10 тысяч в час. Мы направляем эти данные нашим агентам колл-центра для обработки. У нас есть около 700 агентов, работающих над этим процессом. Каждый агент получает следующий вывод после обработки текущего. Обработка каждого свинца занимает от 2-7 минут.

Мы используем oracle в качестве базы данных.
Мы складываем эти Лиды в стопку, отсортированную по времени. Самый последний лид находится в верхней части стека. При каждом запросе на выборку мы берем самый последний лид (из верхней части стека) и передаем его агенту, который выдал запрос на выборку.

Мы сталкиваемся с проблемой предоставления новых лидов агентам в ответ на эти запросы на выборку по следующим причинам:

1. Слишком много одновременных запросов на выборку в любой момент времени. Поскольку oracle не обрабатывает одновременные запросы самостоятельно, только один запрос завершается успешно, а все остальные одновременные запросы терпят неудачу.

Агентам не просьба отправлять повторный запрос. Это продолжает происходить и приводит к длительной задержке для многих агентов, пока они не получат новую зацепку для работы.

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

Mehdi Gholam

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

1 Ответов

Рейтинг:
1

CHill60

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

- Я заинтригован тем, почему вы используете ЛИФО для выдачи запросов.
- Вы изучали возможность внедрения расширенной очереди? Видеть Введение в Oracle Advanced Queuing[^]
- Вы видели эту статью CodeProject о простой очереди в Oracle? Использование таблицы базы данных Oracle в качестве многопоточной рабочей очереди[^]
Или этот (использует SQL, но должен работать в Oracle) - Построение высокопроизводительной очереди в базе данных для хранения заказов, уведомлений, задач[^]


[no name]

Не ждите никаких объяснений от ОП, я сомневаюсь, что он все еще заинтересован после всего этого времени :-)

CHill60

Беспокоить. Как, черт возьми, это оказалось в верхней части моего списка?

CHill60

Тайна раскрыта. Удалите фильтры перед пролистыванием списка!
Это, должно быть, мой худший faux pas на некоторое время :doh:

[no name]

Не беспокойтесь. Это * есть * ответ и вычеркивает его из списка без ответа.