X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=doc%2Ftechnique.txt;h=2ec2ddaaf4231f1fa8a33d8d07d9daab925519c7;hp=74a63609e961babbed04e325aa050efd64fb055e;hb=08254491955bfe4f07eb073b2829cabf90130747;hpb=650c44a784cabc8a1f2bd1daa7e5e61ccf74ca6f diff --git a/doc/technique.txt b/doc/technique.txt index 74a6360..2ec2dda 100644 --- a/doc/technique.txt +++ b/doc/technique.txt @@ -1,58 +1,16 @@ -Euphorik - doc technique +== Euphorik - doc technique == +Cette documentation à pour but de réunir certaines explications concernant des concepts, des algorithmes ou des détails techniques. + +=== Compilation avec "+native" === +Il est possible de compiler le code Erlang avec le flag "+native", cela rend l'execution plus rapide de l'ordre d'un facteur +trois sur des calculs bruts. -== euphorik.js == -Sequences : - * Chargement d'une page - -=== Client === -== pageMinichat.js == -=== Classes === - * Messages - * Conversation - * Message - -=== Compilation avec +native === Mesure du temps d'execution pour : * euphorik_test:start(20, 20) : 20 personnes postants 20 messages sans +native : 3:39 - avec +native : 3.41 + avec +native : 3:41 Conclusion : - l'ajout de +native n'a pas de répercussions significatives sur les performances, cela provient - surement du fait que le gros du travail est fait du coté de la base de donnée Mnesia. - -=== Séquences === - * Attente de nouveaux messages - a) Messages.rafraichirMessages - b) pour chaque conversation - i) Messages.ajouterMessages(lesMessages, numConv) - ii) Conversation.flush - - * Ajout d'un message - PageMinichat.envoyerMessage(pseudo, message) : requête AJAX - - * Extraction d'une conversation - a) Conversation.click - b) Client.ajouterConversation(idMess) - c) Client.flush(false) // mise à jour du profile de manière synchrone - d) Messages.rafraichirMessages(true) - - * Suppression d'une conversation - -=== Exemple de conversation === -Utilisé lors des tests - -m1 -m2 -> m1 -m3 -> m1 -m4 -> m2 -m5 -> m3 -m6 -> m3 -m7 -m8 -> m7 -m9 -> m7 - - - - + l'ajout de +native n'a pas de répercussions significatives sur les performances, cela provient + surement du fait que le gros du travail est fait du coté de la base de donnée Mnesia.