• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

teckV

[Python] Networking

4 mensagens neste tópico

Para mim a parte mais excitante da programação são as comunicações multi-plataforma, multi-sistema ou por outras palavras - Networking sobre IP.

as comunicações entre processos (ou entre maquinas, é igual no caso dos sockets, até foram inventados como IPC, comunicações entre processos na mesma maquina) existem recorrendo a sockets.

o socket é um processo que de uma forma simples é como uma fábrica com um endereço e pode-se enviar materiais para esse endereço e estes são processado.

1º Cria-se um Socket e atribuise-lhe um endereço com numero da porta e tudo, porque a mesma fabrica pode ter varios serviços, um em cada porta.

ex: tcpSock = socket(AF_INET, SOCK_STREAM)

(para pormenores nos parametros vejam a documentação ou perguntem pessoalmente)

se for para um servidor, isto é, se for uma app que receve comunicações faz-se um bind ao endereço na propria maquina e fica a receber.

se for para uma app cliente inicia-se a comunicação para um endereço remoto.

servidor:

tcpSock.bind('localhost', 21567) # fica endereçado ao localhost(a propria maquina) e escuta na porta 21567

tcpSock.listen(5) # o 5 é uma variavel que indica o numero de ligações que recebe até dar time-outs.

cliente:

tcpSock.connect("www.microsoft.com", 80) # liga-se ao servidor remoto

tcpCliSock.send("experiencia") # envia o texto experiencia para o serviço remoto

data = tcpCliSock.recv(1024) # recebe do servidor remoto - o 1024 é o BufferSize, isto é, o numero de bytes que aceita de cada vez

print "comunicacao - ", data # visualizar como é obvio

tcpCliSock.close() # fechar a comunicação... devem fechar sempre os sockets para libertar recursos

no proximo post colocarei um exemplo completo e a funcionar

h2k5 - [tekViriathus]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Acho que vou integrar estes posts que fizeste em pequenos tutoriais, ou tratas tu de fazer um tutorial maior?

Desde já o obrigado do pessoal do Portugal@Programar pelas dicas de Python que deste nestes posts.

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

faz como achares melhor... aos poucos irei dar a volta pelas partes mais cool do python... espero que gostem, é a melhor linguagem e devia ser mais usada por cá...

simples e muito eficaz, mesmo como deve ser...

e altamente extencivel, o facto de se integrar plenamente no SO permite fazer praticamente tudo...

h2k5

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
faz como achares melhor... aos poucos irei dar a volta pelas partes mais cool do python... espero que gostem, é a melhor linguagem e devia ser mais usada por cá...

simples e muito eficaz, mesmo como deve ser...

e altamente extencivel, o facto de se integrar plenamente no SO permite fazer praticamente tudo...

h2k5

Hmm...e eu agradeço essa tua disponibilidade para nos mostrares as maravilhas do Python.

Vou colocar em Inamovível e com a tag tutorial. Depois para dares a conhecer melhor o Python o melhor é apresentares um projecto para que o pessoal fique a conhecer a vertente prática do Python e uma das coisas que é possível fazer com esta linguagem.

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites