Sou programador em Java, e estou com uma situação complexa de decidir, em uma empresa tem um sistema em Deplhi com BD Firebird rodando em rede num servidor interno da empresa, e eles precisam de um sistema Web para usar em vários lugares distantes da empresa que alimente esse banco de dados em Firebird,(o sistema local em Delphi ja esta em produção) pensei nas seguintes soluções:
1º Desenvolvo um sistema Java Web que rode em um servidor na Web, e somente conecte no BD externo em firebird no servidor dentro da empresa(metodologia cloud);
2º Desenvolvo um sistema Java Web que rode dentro do servidor da empresa e conecte no BD em firebird, e deixo livre para acesso externo das pessoas que irão usar e alimetar o sistema de outros lugares;
3º Desenvolvo um sistema Java Web que rode em um servidor na Web com um banco de dados Mysql, e use um Trigger no BD Firebird da empresa;
4º Será que daria para implementar uma interoperabilidade entre esses sistemas ou seria mais complexo?
Pensei nessas soluções mas estou em duvida de qual seria melhor de implementar.
Vc realmente precisa implementar? Pq não usa acesso remoto ao servidor e os usuário externos acessam o sistema assim, tipo um 2003 server com acesso remoto… sacou…
Mas caso vc precise implementar de preferencia a um unico banco de dados…
Eles já usam esse método de acesso remoto, mas agora querem implementar uma aplicação especifica para isso.
[quote=lucas_carvalho100]Vc realmente precisa implementar? Pq não usa acesso remoto ao servidor e os usuário externos acessam o sistema assim, tipo um 2003 server com acesso remoto… sacou…
Mas caso vc precise implementar de preferencia a um unico banco de dados…[/quote]
Queria saber também como o Java funcionaria com uma conexão externa de banco de dados Firebird, pois sempre usei o Mysql e conexões onde o BD estava sempre junto da aplicação, esse é uma das incertezas que enfrento também, será que alguém já fez algo parecido? Você Lucas já fez uma coisa parecido com isso?
Cara trabalhei com firebird com Delphi, nunca usei firebird com java, uso atualmente oracle e mysql… Mas o java funciona normal com firebird tb… só não sei a performace… mas acredito que não deve ser muito lento… O único problema do firebird (eu trabalhava com a versão 1.5 as vezes já foi corrigido) quando o banco fica muito grande ele fica muito, mas muito lento… tipo um banco de 2gb fica lento d+… vc tb deve pensar na quantidade de tráfego que vc vai utilizar… as vezes outro banco daria mais certo, mysql, postgre… Mas antes de implementar em outros banco faça testes com o firebird…
Só pra registrar um banco firebird com 2G.b tem muita informação, muita mesmo, no entanto as vezes com o volume de dados que a empresa trafega ele não vai se comportar legal… banco free que guenta o tranco é o postgre…
Rapaz, tudo depende da necessidade e da experiência da equipe.
Para disponibilizar uma aplicação em um servidor próprio, você vai ter que ter conhecimentos em configuração de servidores, passando pela segurança, escalabilidade (dependendo da sua necessidade de acessos), etc…
Uma alternativa seria contratar um vps com prestação de serviços de administração, nesse caso você teria um custo monetário maior, porém economizaria trabalho (Se você não possuir conhecimento suficiente em configuração de servidores, recomendo fortemente esta opção).
Com relação à conexão Java/Firebird, funciona do mesmo jeito que mysql, postgres, oracle, ou qualquer outro: JDBC. Se a conexão é local, vc vai definir os parâmetros passando localhost, se não for local, vc fará a conexão passando o ip do seu servidor de banco de dados.
Outra alternativa, seria desenvolver uma interface SOAP na aplicação Delphi, de forma a disponibilizar os dados e as operação da aplicação delphi para que a aplicação Java os consuma. Esta opção é mais trabalhosa, dado o fato de que você terá que desenvolver esta interface na sua aplicação Delphi (se isso já não existir), porém você ganharia em segurança e consistência. Duas aplicações diferentes acessando a mesma base de dados pode ser um problema. As alterações de uma podem causar inconsistências na outra, se você não fizer o tratamento adequado. Sem contar que qualquer alteração nas regras de negócio, terá que ser duplicada para as duas aplicações, caso contrário, você terá inconsistências e consequentes dores de cabeça.
Hmmm, entendi, mas e o Mysql, aguenta legal tbm? O que vc acha?
[quote=lucas_carvalho100]Só pra registrar um banco firebird com 2G.b tem muita informação, muita mesmo, no entanto as vezes com o volume de dados que a empresa trafega ele não vai se comportar legal… banco free que guenta o tranco é o postgre…
Bem, primeira coisa que eu faria seria migrar o banco. Vc vai achar pouco material para firebird/java.
Como já foi falado aqui, vc pode “alugar” um servidor e hospedar sua aplicação lá, inclusive o BD. É uma boa alternativa viu?
Eles tomam conta de tudo, tipo segurança/conexão/qtd de acessos e assim vai.
Com isso, todo mundo teria acesso a essa aplicação, vcs não teriam gastos com servidor, pq quando cai um servidor desse cara, é um Deus nos acuda. Ainda mais que um servidor apenas não vai ser suficiente, o correto seria 2 servidores e um de backup do outro.