Bonjour à tous,
Je m'intéresse depuis quelques temps à la programmation réseau avec python et j'ai vraiment du mal à trouver le moyen correct de faire communiquer deux applications (un client et un serveur) pour un petit jeu réseau que j'ai pour objectif de réaliser.
Pour l'instant j'utilise le protocole Tcp qui me semble un bon choix mais je ne suis pas certain.
Si j'ai bien compris le principe de la programmation réseau en python nous avons un socket avec lequel nous faisons transiter des paquets avec les méthodes send et recv.
Une première question que je me pose est, est-ce vraiment utile d'envoyer des paquets autant de fois que possible du client vers le serveur? (Sachant que celui-ci devra gérer plusieurs connexions simultanément? En plus d'utiliser le protocole Tcp qui semble assez lourd celons ce que j'ai pu comprendre).
Ensuite, est-ce que recevoir des données du coté du serveur qui sont des chaînes de caractères sérialisées par le module json pour faire passer la position et le nom du joueur par exemple est une bonne idée? Je me demande comment je devrais faire pour faire transiter ces données si je ne suis pas en moyen de recevoir des données qui ne sont pas "scinder" par deux paquets. Devrais-je utiliser plusieurs sockets différents ? Un pour la position x, un pour la position y et un autre pour le nom de manière à les envoyer sans sérialisation?
Je me sent vraiment perdu face à la problématique du réseau, merci à vous d'avoir lu et n'hésitez pas à m'envoyer des ressources qui pourraient m'aider dans ce domaine car les seuls cours que j'ai pu trouver se penchent plus sur les couches 1, 2, 3 et les autres semblent ne vraiment pas aller dans les détails.![]()
Partager