CONECCOES A 2 SERVIDORES DIFERENTES

 Tópico anterior Próximo tópico Novo tópico

CONECCOES A 2 SERVIDORES DIFERENTES

VB / VBA

 Compartilhe  Compartilhe  Compartilhe
#323016 - 16/09/2009 10:35:39

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Pessoal, bom dia.

Estou com uma BOMBA agora na minha mão, e estou sem ter idéia de como conseguir fazer isso, mas vamos lá.
Eu preciso desenvolver um software que faça o seguinte:
1°) O meu software terá que passar uma STRING para um outro servidor (ao qual eu sei o caminho FTP dele). Seria mais ou menos uma conecção de dados, onde passarei para ele alguns dados nesta string, e ele me retornará (via XML) os dados e terei que ler este XML e exibir no Crystal. Como que eu passo (em VB6) essa string para este cara ler?? E o Retorno, como vou saber que houve retorno e como LEr este XML??

2°) Essa é mais "cabeluda", pois eu vou precisar (neste mesmo software) me conectar ao meu servidor de dados (MySQL que está na internet) e gravar este retorno do XML no registro dele, para que viz WEB, ele saiba que fez também a consulta XXX e que retornou pra ele YYY.
Só que, por motivos de segurança na minha base de dados, não posso me conectar a este meu servidor MYSQL DIRETAMENTE pelo software. Eu terei que fazer uma "ponte" com o meu servidor LOCAL (aquí na empresa), onde eu estarei liberando a entrada nele de qualquer IP, e deste meu SERVIDOR eu sairei com as informações para gravar na base MySQL do meu servidor WEB (onde a página está hospedada).
Isso eu não faço NEM IDÉIA de como fazer. O meu SERVIDOR já está preparado, montado e funcionando. Ou seja, já está preparado para que aceite qualquer IP nele, mas como vou fazer para que meu software se conecte a ELE, e via SOFTWARE eu SAIA por ele e me conecte ao meu servidor de dados MySQL (que está liberado só para um determinado IP se conectar nele)????


A dúvida 1 eu até consigo me virar, mas a dúvida 2 não faço nem idéia de como fazer isso...... Alguém me dá um HELP?????????

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

Resposta escolhida #323018 - 16/09/2009 10:43:59

ASHKATCHUP
CAXIAS DO SUL
Cadast. em:Julho/2009


Deixa eu ver se entendi...

Software A = Local, envia dados
Software B = fica no servidor que processa o XML
Software C = fica no servidor que executa MySQL

1)
A envia string via winsock para B. B recebe (winsock) e processa, retornando uma string (que é um XML)
A recebe o retorno e salva em uma variável.

2)
A envia a variável que recebeu o XML para C. C salva pega a variável, transforma em um arquivo XML temporário e faz a leitura, salvando os dados em seu banco.

É isso?



#323024 - 16/09/2009 11:36:46

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Caro ASHKATCHUP, vamos ver se a minha explicação fica melhor.

MICRO A -> Software desenvolvido por mim, instalado em cliente ao qual não sei o número IP dele e nem posso travar isso.
MICRO B -> Servidor LOCAL, onde permitirá acesso de qualquer IP externo
MICRO C -> Servidor de DADOS (na WEB), onde está liberado somente o acesso do IP do meu servidor.
MICRO D -> Servidos de dados do meu FORNECEDOR, onde eu MANDAREI e RETORNAREI a STRING de DADOS

Questão 1:
MICRO A manda uma STRING para MICRO D, e o mesmo me retorna para o MICRO A o retorno desta STRING

Questão 2:
MICRO A conecta no MICRO B, do MICRO B conecto com o MICRO C, pois do MICRO A para o MICRO B não pode ser feito por motivos de segurança, e MICRO C irá gravar o retorno da STRING (que estará numa variável) do retorno da STRING que veio do MICRO D.




Entendeu???? rs

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

#323029 - 16/09/2009 12:24:04

ASHKATCHUP
CAXIAS DO SUL
Cadast. em:Julho/2009


 Anexos estao visíveis somente para usuários registrados

Eu considero que entender o processo é a parte mais difícil. Fiz um desenho tosco no paint. Se for isso que é para ser feito, não é tão difícil assim. Dá uma olhada ae.

Abraço.



#323030 - 16/09/2009 12:27:13

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Caro ASHKATCHUP.

VC fez o desenho PERFEITO, é exatamente isso que preciso fazer.......


  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

#323031 - 16/09/2009 13:11:46



Cadast. em:


isso que eu chamo de mapear uma atividade ... super detalhado ....

presumo que para resolver esse problema vc precisará de criar um aplicativo que estará sendo executado no ponto B, pois so atraves dele e possivel chegar a ponto C, quanto aos demais e estudo de causa de interpretração de dados que são passados.

Questão 1, pode ser usado: Socket, banco de dados, arquivos xml... o que vc precisa e que quando enviado os dados o servidor envie algum aviso que já processou.

Questão 2, se for mssql 2005, vc pode instalar no ponto B e neste servidor criar um linkserver para o servidor C, assim vc não tem muita dor de cabeça e pode ativar ate niveis de autenticação e criptografia entre os dois (neste caso o mssql 2005 esta servindo somente de ponte para evitar criar um aplicativo so para isso) pode ser criado outros tipos de linkserver, nunca usei em outros tipos de bancos de dados, logo nao sei como irar ser comportar.

Mesmo na questão 2 pode ser criado um aplicativo/servico na unha com tipo exe/activex assim o seu aplicativo trabalha de forma mas transparente como se fosse um so aplicativo, ja vi alguns problemas com esse tipo de aplicativo, porem tb e uma forma de resolver.





#323034 - 16/09/2009 13:33:19

TECLA
SAO PAULO
Cadast. em:Janeiro/2001


Membro da equipe

Última edição em Editado em 16/09/2009 13:33:57 por TECLA por

LCSD,

Uma outra alternativa:

Se no MICRO B tiver um Web Service que "aponte" para o MICRO C (onde será feita a persistência dos dados), o MICRO A pode consumir os métodos sem nenhum problema. Somente com a ajuda SOAP TOOLKIT e mais algumas linhas de código.





#323036 - 16/09/2009 13:34:41

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Caro LCFIOROT,

Questão 1: Eu terei sim um OK do MICRO D, me dizendo que o retorno da string veio. Meu problema maior é saber como ENVIAR e RECEBER essa string lá com o micro D. Pois tenho que mandar para o cara no WEBSERVICE dele, e o WEBSERVICE dele que me retornará os valores....

Questão 2: Eu tinha pensado em criar uma TRIGGER (nem sei se tem isso no MYSQL 06), onde eu faria a conecção pelo meu aplicativo nesta no meu MICRO B, e daí eu processo os envios/recebimentos de dados através desta trigger. O meu problema é: Como se cria TRIGGER em MYSQL?? Este meu banco LOCAL seria uma "réplic" do meu servidor (tabela clientes, por exemplo) da base que estará na WEB???



PS: Eu nunca mechi com SOCKET, e sei que vou apanhar com isso......

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

#323037 - 16/09/2009 13:37:00

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Caro TECLA.

É mais ou menos isso que eu estava pensando.......
Mas agora entra nas mnhas limitações de conhecimento: COMO criar um WEB SERVICE no meu MICRO B, para que ele se conecte diretamente no MICRO C, para LER se o usuário terá ACESSO a consulta que ele quer fazer e para gravar os dados lá????

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

#323041 - 16/09/2009 14:08:49

ASHKATCHUP
CAXIAS DO SUL
Cadast. em:Julho/2009


 Anexos estao visíveis somente para usuários registrados

Eu fiz um exemplo bem simples de Winsock. Espero que te ajude.





#323043 - 16/09/2009 14:20:21



Cadast. em:


questão 1 = nao posso ajudar, nao conheco web service.
questão 2 = tambem e possivel usar o mssql 2005 usando link server para o mysql, mas acho que nao seja viavel, microsoft já da problema com ela mesmo imagina com terceiros....

de quanto micros do tipo A estamos falando ? varios usuarios ou somente 1?



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por LCSD em 18/09/2009 10:28:59