2017-08-12 3 views
2

Je reçois à travers les exemples en ligne, et peut déjà utiliser mnesia ram copies et aussi les connecter, mais je suis un peu confus sur deux choses.Comment Erlang Mnesia distribution Travaux

1: Est-ce que le nœud de démarrage (celui qui crée le schéma), ont seulement le schéma local? (par exemple, dans le dossier racine = [email protected])

Je demande parce que sur un autre noeud, je peux simplement démarrer mnesia, et change_config (extra_db_nodes, [node]), et obtenir automatiquement toutes les données qui sont sur le noeud de départ.

Cela me semble bizarre, que se passe-t-il si tous les nœuds tombent en panne? Cela signifie que le nœud de démarrage doit être exécuté avant de pouvoir faire quoi que ce soit.

2: Il semble y avoir beaucoup de façons différentes pour connecter les noeuds, et pour copier les tables ... Puis-je obtenir une liste des différentes façons de faire, et leurs impacts?

3: De la première question, après avoir appelé change_config, comment pouvez-vous savoir que son fini de télécharger toutes les données avant de pouvoir commencer à l'utiliser? Par exemple, si quelqu'un se connecte au nœud et que vous vérifiez s'il est déjà en ligne, il se peut qu'il soit connecté à un autre nœud et que vous n'obteniez pas ces données lors de la vérification.

4: Après connexion à un nœud, êtes-vous connecté automatiquement à tous les nœuds? Et met-il automatiquement à jour vos copies RAM locales sans rien faire? Comment assure-t-il la synchronisation lors de la lecture et de l'écriture? Dois-je faire quelque chose de spécial?

Et à propos de la question 1 fois - ne pouvait pas vous avoir un processus nœud exécutant qui détient le schéma local, et utiliser ce nœud pour connecter tous les nœuds ensemble? Et si possible pourriez-vous interdire mnesia de copier des copies de RAM à ce processus de noeud?

Je sais que c'est beaucoup, alors merci pour votre temps.

Répondre

0

Pas une réponse directe à vos questions, mais vous pouvez vérifier Erlang Performance Lab qui pourrait vous aider à comprendre comment fonctionne certaines opérations dans Mnesia en visualisant les messages entre différents nœuds.