Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
27 lines (18 sloc) 1.18 KB

The C10K problem

проблемы :

  1. Thread
  2. Unix.select : получает и возвращает списки и это под нагрузкой трешит GC.
  3. много Callback.register: дорогая регистрация, все коллбэки регистрируются в global_root'ы,

    • решение - коллбэки диспатчить через хэштаблицу прямо в камле

решения :

  1. писать event-driven
  2. написать свой враппер на массивах, использовать libevent или более прямую альтернативу - libev
  3. вместо того, чтобы писать callback код, делать инверсию выполнения с помощью cps + pa_monad.
    • это сделано в lwt собственно и можно использовать libev (либо другие асинхронные обёртки) вместо select.

Something went wrong with that request. Please try again.