Exemplo de cluster
Publicado por Diego Lopes (última atualização em 04/10/2022)
[ Hits: 3.397 ]
Homepage:
Conjunto de scripts para exemplo de cluster!
Serviços REST que tem dois nós de processamento de informação usando threads de processamento.
from flask import Flask, redirect, request import socket import random ''' Configuração de acesso ao cluster de processamento ''' HOSTCLUSTER='127.0.0.1' PORTCLUSTER=5001 PORTCLUSTER2=5002 con =socket.socket(socket.AF_INET,socket.SOCK_STREAM) con.connect((HOSTCLUSTER,PORTCLUSTER)) con2 = socket.socket(socket.AF_INET,socket.SOCK_STREAM) con2.connect((HOSTCLUSTER,PORTCLUSTER2)) #nocluster=0 def conexaoCluster2(dados,con2): print(type(((dados['nome']).encode()))) paylod = '{}\r\n'.format(dados['nome']).encode(encoding = 'UTF-8') print(paylod) con2.send(paylod) def conexaoCluster(dados,con): print(type(((dados['nome']).encode()))) #con.send(b'\r\n') paylod = '{}\r\n'.format(dados['nome']).encode(encoding = 'UTF-8') print(paylod) print(type(paylod)) con.send(paylod) #con.sendall() #con.close() app = Flask(__name__) @app.route('/') def index(): return 'Dados entregues ao Cluster' @app.route('/save', methods=['POST']) def save(): dados = request.get_json() print(dados) if(random.randint(0, 1)==0): conexaoCluster(dados,con) #nocluster=nocluster+1 else: conexaoCluster2(dados,con2) #nocluster=nocluster-1 return redirect('/') app.run(host='0.0.0.0') #Nó1/Nó2 import socket import time from threading import Thread class ProcessoCluster(Thread): def __init__(self, dado): Thread.__init__(self) self._dado= dado def run(self): print('Processando {}'.format(self._dado)) time.sleep(10) print('Dado {} Processado'.format(self._dado)) HOST='' PORT=5001 tcp = socket.socket(socket.AF_INET,socket.SOCK_STREAM) tcp.bind((HOST,PORT)) tcp.listen(10) print('---------Iniciando Nó de Processamento--------------') while True: con, client =tcp.accept() print('Recebendo dados!!!') while True: msg = con.recv(1024) if not msg: break processo = ProcessoCluster(msg) processo.start() con.send(b'Fim do processo\r\n') print('Finalizando conexão') con.close()
Virus, trojan, sei la o que é isso
Programa para calcular a média e a nota trimestral
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Não consigo instalar o WineHQ no meu notebook vaio FE15 (Debian) (7)