Как описать gen_server визуально?

Отказ от ответственности: автор - новичок в OTP, имеющий некоторые базовые знания синтаксиса, процессов и сообщений Erlang.

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

Хорошо, официальная документация для gen_server показывает красивую диаграмму сервера и три клиента, подключенные к стрелкам запроса и ответа: http://www.erlang.org/doc/design_principles/gen_server_concepts.html

Но каждый раз, когда я пытаюсь понять концепцию дальше, я застреваю.

Есть много концепций, которые я не могу встроить в одну большую концепцию в моей голове:

  • реализация поведения,
  • контейнер поведения,
  • интерфейс поведения;
  • модуль обратного вызова;
  • функции обратного вызова;
  • функции API.

Я использую следующие ресурсы:

Я все еще в состоянии «мы вызываем одну функцию в одном модуле, эта функция вызывает другую функцию, эта функция создает процесс ... застрял "

Есть ли способ описать понятие gen_server на диаграмме? Как можно визуально показать поток взаимодействия между клиентами и сервером? (чтобы помочь не очень умному новичку понять концепцию визуально)

Например, как здесь: http: //support.novell. com / techcenter / article / img / dnd2003080506.gif

UPD: Я попытался нарисовать собственную схему, но все еще не понимаю назначение какого-либо разъема на схеме: http: // postimage.org/image/qe215ric/full/

UPD2: Это нечто похожее на то, что я хотел бы видеть: http://cryptoanarchy.org/wiki/Worker_patterns (Модель). Однако он не показывает взаимодействия между модулями, функциями и процессами.

7
задан skanatek 11 August 2011 в 10:21
поделиться