Re: RES: RES: [delphi-br] Conexão para Threads

2007-12-10 Por tôpico José Mário Silva Guedes
Olá, trabalho muito com Thread com acesso a banco de dados.

Já bati muito a cabeça.

A melhor solução que lhe sugiro e que comigo funciona muito bem, é o
seguinte: POOL de Conexões.

Eu trabalho com Delphi + Zeos + PostgreSQL.

Eu criei uma Thread específica que mantém um array de conexões com o banco
de dados. Quando uma outra Thread precisa fazer algo com o banco, ela
solicita uma conexão.

Com isso há um balanceamento muito interessante.

Não compartilhe uma conexão entre várias Threads!

Uma quer dar Insert, outra Delete... E a Transação, como fica?

Uma conexão por Thread pura e simples - por sua vez - faz com que haja muita
conexão ociosa com o banco.


[As partes desta mensagem que não continham texto foram removidas]



RES: RES: RES: [delphi-br] Conexão para Threads

2007-12-08 Por tôpico Sérgio T . Uetanabaro
Não somente o componente. Depende tbem do cliente do banco de dados. Até a
versão 1.5 o firebird ficava maluco (problemas em relação à cursores) com
multiplas thread na mesma conexao.
 
[]´s
 
 
Sérgio T. Uetanabaro

 

   _  

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de Joao Morais
Enviada em: sexta-feira, 7 de dezembro de 2007 17:32
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: RES: RES: [delphi-br] Conexão para Threads



Sérgio T. Uetanabaro wrote:
 Alguma tratativa deve haver pois ja tive problemas graves compartilhando
 conexoes entre threads. 

Você *deve* usar uma conexão por thread se o componente não for thread safe.

Você pode usar apenas uma conexão se o componente for thread safe e 
estiver configurado para trabalhar desta forma.

--
Joao Morais


 


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.16.17/1178 - Release Date: 8/12/2007
11:59



No virus found in this outgoing message.
Checked by AVG Free Edition. 
Version: 7.5.503 / Virus Database: 269.16.17/1178 - Release Date: 8/12/2007
11:59
 


[As partes desta mensagem que não continham texto foram removidas]



Res: RES: [delphi-br] Conexão para Threads

2007-12-07 Por tôpico Elazar Dornelles Ceza
Estranho, então agora fiquei com duvidas sobre o porque dos sistemas NTier do 
Bruno Lichot utilizam apenas uma unica conexão com banco de dados...

No caso de ter varios clientes acessando seriam varias threads do aplicativo 
servidor...e me parece bem semelhante ao que voce deseja...

Por favor me corrigam se falei besteira.


- Mensagem original 
De: Sérgio T. Uetanabaro [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 7 de Dezembro de 2007 15:55:04
Assunto: RES: [delphi-br] Conexão para Threads

É melhor fazer uma conexao por thread pq sinao vc pode ter problemas.

[]´s


Sérgio T. Uetanabaro

_ 

De: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] Em
nome de Evaldo
Enviada em: sexta-feira, 7 de dezembro de 2007 16:49
Para: [EMAIL PROTECTED] os.com.br
Assunto: [delphi-br] Conexão para Threads

Olá, 

Estou trabalhando em uma tela onde vou criar várias threads que irão fazer
acesso ao banco de dados para fazer diferentes consultas.
Gostaria de saber o que eh melhor: criar uma conexão para cada thread ou uma
única conexão seria suficiente para todas?

As consultas serão relativamente leves, na média de 200 registros por
threads. 

Obs.:
No total são disparadas 5 threads simultaneamente. 
O BD é firebird.
componente de Acesso Zeos.
Delphi 7.

--
Atenciosamente:
Evaldo Avelar Marques
Programador Junior Delphi, C# Dot Net 

HYPERLINK mailto:evaldoavela r%40yahoo. com.brevaldoave [EMAIL PROTECTED] 
com.-br

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
armazenamento!
HYPERLINK http://br.mail. yahoo.com/http://br.mail. -yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]

No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11

No virus found in this outgoing message.
Checked by AVG Free Edition. 
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11


[As partes desta mensagem que não continham texto foram removidas]





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]



RE: Res: RES: RES: [delphi-br] Conexão para Threads

2007-12-07 Por tôpico Rubem Nascimento da Rocha


Sim!





To: delphi-br@yahoogrupos.com.br
From: [EMAIL PROTECTED]
Date: Fri, 7 Dec 2007 11:41:47 -0800
Subject: Res: RES: RES: [delphi-br] Conexão para Threads







Certo, DBX é thread safe?

- Mensagem original 
De: Joao Morais [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 7 de Dezembro de 2007 16:32:27
Assunto: Re: RES: RES: [delphi-br] Conexão para Threads

Sérgio T. Uetanabaro wrote:
 Alguma tratativa deve haver pois ja tive problemas graves compartilhando
 conexoes entre threads.

Você *deve* usar uma conexão por thread se o componente não for thread safe.

Você pode usar apenas uma conexão se o componente for thread safe e
estiver configurado para trabalhar desta forma.

--
Joao Morais

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail.yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]









_
Veja mapas e encontre as melhores rotas para fugir do trânsito com o Live 
Search Maps!
http://www.livemaps.com.br/index.aspx?tr=true

RES: RES: [delphi-br] Conexão para Threads

2007-12-07 Por tôpico Sérgio T . Uetanabaro
Alguns drivers de acesso não suportam mutiplas threads em uma conexão,
que era (ou ainda é, nao sei)  o caso do firebird. Vc tbem poderá ter
problemas de transação e cursores. As boas práticas de programação
thread-safe diz que threads q usam banco de dados devem ter conexoes de
forma exclusiva. Procure mais literatura sobre thread-safe que é um assunto
bem interessante.
 
 
Sérgio T. Uetanabaro

 

   _  

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de Leandro
Enviada em: sexta-feira, 7 de dezembro de 2007 18:10
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: RES: [delphi-br] Conexão para Threads



Só por curiosidade mesmo, que tipo de problemas?
É que vou precisar fazer algo parecido em breve.

Obrigado,

Leandro

- Original Message - 
From: Rubem Nascimento da Rocha 
To: HYPERLINK
mailto:delphi-br%40yahoogrupos.com.br[EMAIL PROTECTED] 
Sent: Friday, December 07, 2007 3:59 PM
Subject: RE: RES: [delphi-br] Conexão para Threads

Assino embaixo, Sérgio.
Sds.

To: HYPERLINK
mailto:delphi-br%40yahoogrupos.com.brFrom[EMAIL PROTECTED]
: HYPERLINK mailto:suka%40allbras.com.brDate[EMAIL PROTECTED]: Fri,
7 Dec 2007 16:55:04 -0200Subject: RES: [delphi-br] Conexão para Threads

É melhor fazer uma conexao por thread pq sinao vc pode ter
problemas.[]´-sSérgio T. Uetanabaro__-___ De: HYPERLINK
mailto:delphi-br%40yahoogrupos.com.br[EMAIL PROTECTED]
[mailto:HYPERLINK
mailto:delphi-br%40yahoogrupos.com.br[EMAIL PROTECTED] Emnome
de EvaldoEnviada em: sexta-feira, 7 de dezembro de 2007 16:49Para: HYPERLINK
mailto:delphi-br%40yahoogrupos.com.brAssunto[EMAIL PROTECTED]
ssunto: [delphi-br] Conexão para ThreadsOlá, Estou trabalhando em uma tela
onde vou criar várias threads que irão fazeracesso ao banco de dados para
fazer diferentes consultas.Gostaria de saber o que eh melhor: criar uma
conexão para cada thread ou umaúnica conexão seria suficiente para todas?As
consultas serão relativamente leves, na média de 200 registros porthreads.
Obs.:No total são disparadas 5 threads simultaneamente. O BD é
firebird.componente de Acesso Zeos.Delphi 7.--Atenciosamente:-Evaldo Avelar
MarquesProgramador Junior Delphi, C# Dot Net HYPERLINK
mailto:evaldoavela-r%40yahoo.-com.br[EMAIL PROTECTED] sua
conta no Yahoo! Mail, o único sem limite de espaço
paraarmazenamento!-HYPERLINK HYPERLINK
http://br.mail.yahoo.com/http://br.mail.-yahoo.com/HYPERLINK
http://br.mail.-yahoo.com/http://br.mail.--yahoo.com/[As partes desta
mensagem que não continham texto foram removidas]No virus found in this
incoming message.Checked by AVG Free Edition.Version: 7.5.503 / Virus
Database: 269.16.17/1177 - Release Date: 7/12/200713:-11No virus found in
this outgoing message.Checked by AVG Free Edition. Version: 7.5.503 / Virus
Database: 269.16.17/1177 - Release Date: 7/12/200713:-11[As partes desta
mensagem que não continham texto foram removidas] 

-_-_-_-_-_-_
Conheça o Windows Live Spaces, a rede de relacionamentos conectada ao
Messenger!
HYPERLINK
http://spaces.live.com/signup.aspxhttp://spaces.-live.com/-signup.aspx

[As partes desta mensagem que não continham texto foram removidas]

[As partes desta mensagem que não continham texto foram removidas]



 


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11



No virus found in this outgoing message.
Checked by AVG Free Edition. 
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11
 


[As partes desta mensagem que não continham texto foram removidas]



RES: RES: [delphi-br] Conexão para Threads

2007-12-07 Por tôpico Sérgio T . Uetanabaro
Alguma tratativa deve haver pois ja tive problemas graves compartilhando
conexoes entre threads.  
 
 
Sérgio T. Uetanabaro
Tecnologia 
* 55 16 2102-8787 - Ribeirão Preto 
* HYPERLINK mailto:[EMAIL PROTECTED][EMAIL PROTECTED] 
 


   _  

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de Elazar Dornelles Ceza
Enviada em: sexta-feira, 7 de dezembro de 2007 17:05
Para: delphi-br@yahoogrupos.com.br
Assunto: Res: RES: [delphi-br] Conexão para Threads



Estranho, então agora fiquei com duvidas sobre o porque dos sistemas NTier
do Bruno Lichot utilizam apenas uma unica conexão com banco de dados...

No caso de ter varios clientes acessando seriam varias threads do aplicativo
servidor...e me parece bem semelhante ao que voce deseja...

Por favor me corrigam se falei besteira.

- Mensagem original 
De: Sérgio T. Uetanabaro HYPERLINK
mailto:suka%40allbras.com.br[EMAIL PROTECTED]
Para: HYPERLINK
mailto:delphi-br%40yahoogrupos.com.br[EMAIL PROTECTED]
Enviadas: Sexta-feira, 7 de Dezembro de 2007 15:55:04
Assunto: RES: [delphi-br] Conexão para Threads

É melhor fazer uma conexao por thread pq sinao vc pode ter problemas.

[]´s

Sérgio T. Uetanabaro

_ 

De: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] Em
nome de Evaldo
Enviada em: sexta-feira, 7 de dezembro de 2007 16:49
Para: [EMAIL PROTECTED] os.com.br
Assunto: [delphi-br] Conexão para Threads

Olá, 

Estou trabalhando em uma tela onde vou criar várias threads que irão fazer
acesso ao banco de dados para fazer diferentes consultas.
Gostaria de saber o que eh melhor: criar uma conexão para cada thread ou uma
única conexão seria suficiente para todas?

As consultas serão relativamente leves, na média de 200 registros por
threads. 

Obs.:
No total são disparadas 5 threads simultaneamente. 
O BD é firebird.
componente de Acesso Zeos.
Delphi 7.

--
Atenciosamente:
Evaldo Avelar Marques
Programador Junior Delphi, C# Dot Net 

HYPERLINK mailto:evaldoavela r%40yahoo. com.brevaldoave [EMAIL PROTECTED]
com.-br

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
armazenamento!
HYPERLINK HYPERLINK http://br.mail.http://br.mail. yahoo.com/HYPERLINK
http://br.mail.http://br.mail. -yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]

No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11

No virus found in this outgoing message.
Checked by AVG Free Edition. 
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11

[As partes desta mensagem que não continham texto foram removidas]

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
armazenamento!
HYPERLINK http://br.mail.yahoo.com/http://br.mail.-yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]



 


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11



No virus found in this outgoing message.
Checked by AVG Free Edition. 
Version: 7.5.503 / Virus Database: 269.16.17/1177 - Release Date: 7/12/2007
13:11
 


[As partes desta mensagem que não continham texto foram removidas]