Задать вопрос
sdevalex
@sdevalex

Распределённая память

Сейчас существует TCP-сервер на С++, который общается с клиентами. Все данные хранятся в памяти, а несколько потоков выполняются фоновые вычисления на основе данных в памяти.

Стало не хватать мощности CPU. Какие есть способы вынести фоновые вычисления на другую машину или машины без переписывания сервера?

Реляционные базы данных выкинули довольно давно, о noSQL долго спорили, ничего не решили.
  • Вопрос задан
  • 2733 просмотра
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Нетология
    Специалист по информационной безопасности + нейросети
    12 месяцев
    Далее
  • Компьютерная академия «TOP»
    Учебная программа “Разработка программного обеспечения”
    30 месяцев
    Далее
Решения вопроса 1
SergeiStartsev
@SergeiStartsev
Совсем без переписывания сервера скорее всего не обойдетесь, как минимум вам придется выделить задачи, которые следует разнести на другие CPU. Смотрите в сторону MPI (Message Passing Interface). В свое время использовал его реализацию MPICH, но вполне подойдут и другие реализации.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Без переписывания — никаких. Если готовы вместо общей памяти перейти на сообщения, то rabbitmq.
Ответ написан
Комментировать
amarao
@amarao
google: NUMA
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы