bueno me gustaria saber si este codigo esta bien y la adaptacion osea que no me consuma mucha memoria ya que estamos viendo la situacion de conectar 200 clientes ah y cada cliente envia informacion cada 30 segundos :).
gracias
Código Python:
Ver original
#! /usr/bin/env python ''' Created on 20/02/2009 @author: Chuidiang Ejemplo de socket en python. Un servidor que acepta clientes. Si el cliente envia "hola", el servidor contesta "pues hola". Si el cliente envia "adios", el servidor contesta "pues adios" y cierra la conexion. El servidor no acepta multiples clientes simultaneamente. ''' import pg import socket from threading import Thread #Clase con el hilo para atender a los clientes. #En el constructor recibe el socket con el cliente y los datos del #cliente para escribir por pantalla class Cliente(Thread): def __init__(self, socket_cliente, datos_cliente): Thread.__init__(self) self.socket = socket_cliente self.datos = datos_cliente # Bucle para atender al cliente. def run(self): # Bucle indefinido hasta que el cliente envie "adios" seguir = True while seguir: # Espera por datos peticion = self.socket.recv(1024) usuario='postgresql' clave='12345' base='prueba' conexion=pg.connect(dbname=base,user=usuario,passwd=clave) consulta="select * from registra_trama_prueba1('"+peticion+"')" respuesta=conexion.query(consulta) conexion.close() print peticion self.socket.close() print "desconectado "+str(self.datos) seguir = False if __name__ == '__main__': # Se prepara el servidor server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server.bind(("", 9090)) server.listen(1) print "Esperando clientes..." # bucle para atender clientes while 1: # Se espera a un cliente socket_cliente, datos_cliente = server.accept() # Se escribe su informacion print "conectado "+str(datos_cliente) # Se crea la clase con el hilo y se arranca. hilo = Cliente(socket_cliente, datos_cliente) hilo.start()