Questions NodeJs

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour, je suis débutant avec Nodejs, et vu que c'est la première fois que j'utilise une techno coté serveur, j'ai quelque questions auquel je souhaiterais que l'on me réponde:

1
2
3
4
5
Nodejs est il adéquat pour faire un système de compte?
Quand on as des pages statiques, on fait un lien vers la page (<a>), et la page est renvoyé. Mais avec Node et les templates, il va falloir que j'ajoute du code coté serveur à chaque nouvelle page de mon site ?
Nodejs est souvent utilisé avec du NoSql, mais dans quel cas utiliser du NoSql, dans quel cas du Sql ?
Peut-on séparer son code serveur en plusieurs parties ?
Grâce à un framework comme Sails, Nodejs peut il remplacer un langage tel que Ruby (R&R), Python(Django) ou PHP ?

Merci d'avance pour vos réponses, je souhaite y voir un peu plus clair :) {

+0 -0
Staff

Bat' a bien répondu, du coup je précise juste le point 3.

  • (r) Est-ce que tu fais du Big Data ? (Ou plutôt : est-ce que tu as des dizaines de terabytes de données, est-ce que ta base de donnée doit gérer plusieurs millions d'événements par seconde ou est-ce que tu dois manipuler des données extrêmement variées (texte (non) structuré, images, vidéo, …) ?)
  • Est-ce que tu as besoin de disponibilité continue ? (Ou est-il acceptable d'avoir quelques secondes de downtime pour par exemple relancer un serveur ?)
  • Est-ce que tu dois avoir un modèle de donnée extrêmement flexible ? (Et pas simplement des tables comme dans la majorité des SGBDR ?)

Si oui, et j'en doute énormément, tu n'as pas besoin de nosql.

Je parle de JavaScript et d'autres trucs sur mon blog : https://draft.li/blog

+1 -0
Staff

Je te propose de répondre à tes questions. COnsidère que tous les mots en gras sont une invitation à copier/coller ça dans le champ de recherche de ton moteur favoris.

Nodejs est il adéquat pour faire un système de compte?

ça dépend. si c'est juste pour faire un espace membre, je dirais que c'est overhead et peu crédible. Si par contre l'espace membre est au coeur d'un site où l'asynchrone et le subscribe/publish sont très présent, oui.

Quand on as des pages statiques, on fait un lien vers la page (<a>), et la page est renvoyé. Mais avec Node et les templates, il va falloir que j'ajoute du code coté serveur à chaque nouvelle page de mon site ?

En soit nodejs est là pour générer des pages dynamiquement. Si une page est statique (ça arrive hein, par exemple sur zds, tu as la page des CGU qui est statique pour les non connectés), alors il suffit de demander à node de servir la page telle que. Par contre si toutes tes pages sont adaptées à l'utilisateur courant, oui, va falloir utiliser les templates.

odejs est souvent utilisé avec du NoSql, mais dans quel cas utiliser du NoSql, dans quel cas du Sql ?

Ca c'est pas forcément vrai. Globalement SQL c'est bien quand tu as un modèle qui ne bouge pas trop (zds utilise SQL pour la majorité du site et on songe à utiliser NoSQL uniquement pour les stats) et NoSQL quand tu as besoin de monter rapidement en échelle quitte à sacrifier de la consistance (théorème CAP)

Peut-on séparer son code serveur en plusieurs parties ?

C'est le cas dans tous les langages.

Grâce à un framework comme Sails, Nodejs peut il remplacer un langage tel que Ruby (R&R), Python(Django) ou PHP ?

C'est même le but, même si je ne conseille pas.

+2 -0
Auteur du sujet

Merci à tous pour vos réponses. Désolé de poser des questions si élémentaires mais je trouve que le problème de Nodejs aujourd'hui est le manque de tutoriel complet pour débutant (à jour)… Sinon, j'ai besoin d'un accès constant à une base de données (jeux multijoueur temps réel) une base Sql fera elle quand même l'affaire ?

Édité par jerkoco

+0 -0

La différence principale entre R&R / Django / Symfony et leurs copains et nodeJS vu à travers les yeux d'un débutant c'est son aspect non-dogmatique.

node n'est pas un framework, y'a pas une bonne façon de gérer les comptes utilisateurs, y'a 200 façons de le faire. D'ailleurs tu te poses déjà la question du stockage, SQL ou noSQL pour gérer tes membres. Question que tu ne te poserais probablement pas avec Django.

Tu peux très bien utiliser node, et node-postgres, ou alors un ORM comme Sequelize rien ne t'en empêche, mais rien ne t'y force non plus.

Tu seras beaucoup plus guidé avec des frameworks comme Django ou RoR. Tu seras beaucoup plus libre avec nodejs. Tu monteras beaucoup mieux en scalabilité (échelle) avec node, tu auras plus de facilité pour tout ce qui touche au temps-réel (notifications, etc.) avec node qu'avec les autres technologies.

Si t'as envie d'essayer, essaie et fais-toi une opinion, on sera disponible sur ce forum pour répondre à tes questions. Mais si tu cherches LA bonne techno, on ne peut pas répondre sans avoir une vue très détaillée de ton projet (que tu n'as peut-être pas encore toi-même).

Bidouille, teste, essaie :)

Happiness is a warm puppy

+2 -0
Staff

Libre implique aussi moins structuré. Node on fait des trucs jolis avec mais faut bien se dire que tous les 6 mois tes dépendances changent et que c'est galère à maintenir à jour.

"I think that it’s extraordinarily important that we in computer science keep fun in computing." – Alan J. Perlis

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte