Как Erlang справляется с большим асинхронным процессом? - PullRequest
0 голосов
/ 10 декабря 2018

Как erlang обрабатывает асинхронные процессы, такие как запись в журнал или запись в mnesia для таблиц с высокой скоростью записи?Я порождаю новый процесс для каждой записи / журнала и проверяю с gen_server, чтобы обработать сам процесс регистрации.Память процесса gen_server быстро накапливается и приводит к сбою эрланга.

Каков способ обработки таких процессов?

1 Ответ

0 голосов
/ 10 декабря 2018

Используйте пул процессов в качестве рабочих для достижения этой цели. Если вы используете один процесс, очередь сообщений будет продолжать увеличиваться, а обработка будет задерживаться.

  • Пул процессов появления (например, 10)
  • Скорость деления между этими процессами

Таким образом, вы можете справиться с высокой нагрузкой.

...