Elixir est un langage compilé sur la machine virtuelle BEAM, cette même machine à été développée pour le langage Erlang créé par Ericsson qui servait à exploiter leur infrastructure télécom. Toute la plateforme (BEAM, Erlang, les librairies disponibles) a été créée dans un simple but : la tolérance aux pannes. Si jamais il y avait un problème sur un appel entre deux personnes, ça ne devait pas faire planter quoi-que-ce soit d'autre dans l'application. Et il fallait qu'à aucun moment on ne puisse pas appeler, la plateforme devait toujours être disponible, h24. C'est toujours le cas.
Tous les choix architecturaux ont été faits dans cette direction : variables immutables, mémoire non partagée, langage fonctionnel, concurrence et légèreté des processus, etc.
Du coup, bah oui, c'est robuste. Le chat de Facebook a longtemps tourné sur des serveurs écrits avec Erlang (ils l'ont réécrit en C++ il y a quelques temps car ça commençait à chauffer vu le nombre d'utilisateurs et le fait que les pros de Erlang sont peu nombreux et généralement pris).
Elixir bénéficie de tout ça puisqu'il compile vers BEAM, mais la communauté et les librairies sont plus orientées vers le web.
Je couple Elixir avec Javascript côté navigateur. Est-ce que j'ai fait le bon choix ? Je pense arriver à mes fins sans trop de problèmes, mais on saura si c'était le bon choix seulement à ce moment là. Ceci dit ça fonctionne, ça ne fait rien de moins que PHP ou Node, donc au pire c'est largement suffisant.
Tu devrais choisir Elixir plutôt que Node si les aspects que j'ai décrit dans mes deux posts t'intéressent. Mais si Node te motive, tu peux très bien l'utiliser, ce n'est pas un mauvais choix.
Tu peux aussi travailler un peu avec les deux pour comparer au début.
Il y a cet exemple de jeu fait avec Elixir dont le code est disponible sur Github : https://phoenix-battleship.herokuapp.com/
Tous les choix architecturaux ont été faits dans cette direction : variables immutables, mémoire non partagée, langage fonctionnel, concurrence et légèreté des processus, etc.
Du coup, bah oui, c'est robuste. Le chat de Facebook a longtemps tourné sur des serveurs écrits avec Erlang (ils l'ont réécrit en C++ il y a quelques temps car ça commençait à chauffer vu le nombre d'utilisateurs et le fait que les pros de Erlang sont peu nombreux et généralement pris).
Elixir bénéficie de tout ça puisqu'il compile vers BEAM, mais la communauté et les librairies sont plus orientées vers le web.
Je couple Elixir avec Javascript côté navigateur. Est-ce que j'ai fait le bon choix ? Je pense arriver à mes fins sans trop de problèmes, mais on saura si c'était le bon choix seulement à ce moment là. Ceci dit ça fonctionne, ça ne fait rien de moins que PHP ou Node, donc au pire c'est largement suffisant.
Tu devrais choisir Elixir plutôt que Node si les aspects que j'ai décrit dans mes deux posts t'intéressent. Mais si Node te motive, tu peux très bien l'utiliser, ce n'est pas un mauvais choix.
Tu peux aussi travailler un peu avec les deux pour comparer au début.
Il y a cet exemple de jeu fait avec Elixir dont le code est disponible sur Github : https://phoenix-battleship.herokuapp.com/