Python et applications web

Magazine
Marque
GNU/Linux Magazine
Numéro
139
Mois de parution
juin 2011


Résumé
Python a toujours présenté des solutions originales aux développeurs web. L'évolution des pratiques du développement web s'oriente vers la résolution de nouvelles problématiques liées à l'industrialisation, à la fiabilisation et à la réutilisation. Les solutions plébiscitées se soldent par l'avènement de la programmation par composants, qui s'ancre résolument dans le paysage du développement web. Cet article fait un état des lieux de la vision web par Python et répond à la question suivante : « Je dois réaliser une application web en respectant des délais restreints, des coûts fixés et un niveau de qualité important. Quelles solutions offre Python, que valent-elles face à la concurrence et quels sont les critères qui me permettront de faire un choix éclairé ? »

1. Le serveur web vu par Python

1.1 Couches basses

Écrire un serveur web avec Python est d'une simplicité proprement hallucinante. Voici pour un serveur TCP :

import SocketServer

tcp_server = SocketServer.TCPServer(('localhost', 8001), TcpHandler)

tcp_server.serve_forever()

Et maintenant pour un serveur UDP :

import SocketServer

upd_server = SocketServer.UDPServer(('localhost', 8002), UdpHandler)

udp_server.serve_forever()

Les deux extraits de code sont quasiment identiques. La question est en réalité de savoir à quoi vont servir ses serveurs. Le handler présent en tant que second paramètre est instancié pour chaque requête, et c'est à lui de dire quoi faire.

Il peut se contenter de répondre « Hello World », au hasard. Pour TcpHandler, cela donne :

class TcpHandler:(SocketServer.BaseRequestHandler):

 def handle(self):

  self.request.send('Hello World')

Pour UdpHandler, il y a des petites différences :

class UdpHandler:(SocketServer.BaseRequestHandler):

 def handle(self):

 

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Par le(s) même(s) auteur(s)

Python « moderne » : comment coder en Python en 2020 ?

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
110
Mois de parution
septembre 2020
Spécialité(s)
Résumé

Le langage Python évolue progressivement, version après version et de nouvelles fonctionnalités voient le jour et changent la manière dont le langage peut être appréhendé.Au-delà de la curiosité que ces changements provoquent, ils sont des révolutions silencieuses ayant un impact réel sur le style de codage.

Les derniers articles Premiums

Les derniers articles Premium

Stubby : protection de votre vie privée via le chiffrement des requêtes DNS

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Depuis les révélations d’Edward Snowden sur l’espionnage de masse des communications sur Internet par la NSA, un effort massif a été fait pour protéger la vie en ligne des internautes. Cet effort s’est principalement concentré sur les outils de communication avec la généralisation de l’usage du chiffrement sur le web (désormais, plus de 90 % des échanges se font en HTTPS) et l’adoption en masse des messageries utilisant des protocoles de chiffrement de bout en bout. Cependant, toutes ces communications, bien que chiffrées, utilisent un protocole qui, lui, n’est pas chiffré par défaut, loin de là : le DNS. Voyons ensemble quels sont les risques que cela induit pour les internautes et comment nous pouvons améliorer la situation.

Surveillez la consommation énergétique de votre code

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Être en mesure de surveiller la consommation énergétique de nos applications est une idée attrayante, qui n'est que trop souvent mise à la marge aujourd'hui. C'est d'ailleurs paradoxal, quand on pense que de plus en plus de voitures permettent de connaître la consommation instantanée et la consommation moyenne du véhicule, mais que nos chers ordinateurs, fleurons de la technologie, ne le permettent pas pour nos applications... Mais c'est aussi une tendance qui s'affirme petit à petit et à laquelle à terme, il devrait être difficile d'échapper. Car même si ce n'est qu'un effet de bord, elle nous amène à créer des programmes plus efficaces, qui sont également moins chers à exécuter.

Donnez une autre dimension à vos logs avec Vector

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Avoir des informations précises et détaillées sur ce qu’il se passe dans une infrastructure, et sur les applications qu'elle héberge est un enjeu critique pour votre business. Cependant, ça demande du temps, temps qu'on préfère parfois se réserver pour d'autres tâches jugées plus prioritaires. Mais qu'un système plante, qu'une application perde les pédales ou qu'une faille de sécurité soit découverte et c'est la panique à bord ! Alors je vous le demande, qui voudrait rester aveugle quand l'observabilité a tout à vous offrir ?

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous