CONECCOES A 2 SERVIDORES DIFERENTES
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?????????
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?????????
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?
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?
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
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
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.
Abraço.
Caro ASHKATCHUP.
VC fez o desenho PERFEITO, é exatamente isso que preciso fazer.......
VC fez o desenho PERFEITO, é exatamente isso que preciso fazer.......
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.
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.
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......
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......
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á????
é 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á????
Eu fiz um exemplo bem simples de Winsock. Espero que te ajude.
Tópico encerrado , respostas não são mais permitidas