[LJ2ME] Проектирование для Эрланга

Dec 02, 2007 19:36

Начал подробное знакомство с Mnesia. Уже давно читал про эту амнезию, и вот ведь странная вещь - все пишут о ней как об обычной бд, сравнивают ее с разными там MySQL, находят достоинства и недостатки. Больше последних.

 И при этом все молчат как рыбы о проектировании в Эрланге c применением мнезии. Это, интересно, что - заговор Эрлангистов?

Другой причины, видимо, нет. Потому, что вскрытие показывает: Мнезия - это никакая не БД. 

Это реализация транзакционной памяти для мутабельных разделяемых объектов в эрлпнге. Вы можете в рамках распределенной транзакции выполнить совершенно произвольный эрланговский код, и система сама позаботится о синхронизации. Вы можете динамически менять схему на лету, менять местоположение данных, и все это не останавливая прикладного кода. Если хотите persistance - система позаботится и об этом, надо просто сказать.

Но это не БД - к ней стоит относится как к части языка. Да, мнезия дает некоторые функции БД, но это не главное. Главное - именно мнезия превращает Эрланг в настоящий язык параллельного программирования, раскрывая всю его мощь. Глядя на мнезию, становится наконец понятно, как проектировать кластерные приложения, вот он, недостающий элемент.

 Короче, секрет Эрлангистов раскрыт. Ну, теперь у нас дела пойдут. Когда разберусь, напишу.

проектирование, erlang

Previous post Next post
Up