Jump to content
Sign in to follow this  
watt

Procuro dica sobre utilização de C# com Mysql

Recommended Posts

watt

Boas pessoal!

estou com um problema não muito agradavel :P estou a desenvolver um jogo, e por vezes tenho que fazer uma serie de escritas na Bd, e ele começa a dar muito time out's, á alguma forma que eu posso resolver isto?, sem perder dados.

Share this post


Link to post
Share on other sites
watt

ok... axo que não me expliquei bem ... é assim eu ligar, ler e escrever na bd consigo, o problema é que qd quero escrever muita coisa ao mesmo tempo, ele dá time out's, sei que á por ai um código que faz a gestão do da escrita na bd, de forma a evitar os times out, mas o que me está a acontecer é que não encontro. e estava na esperança que aparecesse alguém que tivesse tido o prob, e que o tivesse consigo ultrapassar.

Share this post


Link to post
Share on other sites
M6

Aumenta o timeout na configuração da bd ou faz transacções com checkpoits intermédios, em principio deve resolver o teu problema.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites
watt

desculpa a minha ignorancia ... mas o que é que chamas de checkpoits intermédios ?

Share this post


Link to post
Share on other sites
fnds

Se entendi bem, é ires enviado as coisas por partes, em vez de enviares tudo de uma vez, divides.

Share this post


Link to post
Share on other sites
M6

Correcto.

Numa transacção é comum fazer commits intermédios, isso é um checkpoint.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites
watt

Correcto.

Numa transacção é comum fazer commits intermédios, isso é um checkpoint.

e isso vai dar mais velocidade á minha BD ?

é que neste momento estou a deparar-me com problemas de velocidade na base de dados.  crio varias thread, onde há leitura e escrita de dados no minimo i vez por minuto, quando são poucas threads a trabalhar ao mesmo tempo, o acesso á bd é rapido, mas quando passa das 200 começa a ficar muito lento.

Á alguma regra ou algo que me permita escrever mais de 200 registos quase ao mesmo tempo, se meter a bd lenta ?

Share this post


Link to post
Share on other sites
DanielAmorim

Se tiveres 200 threads a ler e escrever na base de dados terás 200 ligações abertas... será que o gestor de base de dados suporta isso?

Acredito que não. Muitas vezes deve-te estar a dar timeout porque não consegue abrir uma ligação à base de dados.


Daniel Amorim

VP for xRTML

http://www.xrtml.org http://www.realtime.co

Share this post


Link to post
Share on other sites
MytyMyky

Se estiveres a utilizar a classe SQLCommand (ou semelhante) para enviar os comandos à BD, podes alterar a propriedade de CommandTimeout para o o comando individual e aumentar o tempo por aí. Verifica no entanto se n é possível algum tipo de optimização do SQL q estás a usar, ou mesmo do processo de preparação do envio, e ainda se não tens por aí algum loop interminável.

Há dias escrevi sobre isto no meu blog.. http://miguelalho.com/?p=679


Miguel Alho - Freelancer! Website e blog - http://www.miguelalho.com

Share this post


Link to post
Share on other sites
killercode

epá... não deves abrir 200 ligações a base de dados... pelo menos da maneira que estas a fazer..... tens mesmo de ter 200 treads a correr ao mesmo tempo e a aceder ao mesmo tempo...

Na pior das hipoteses podes ter uma ligação activa... e elas vão todas usar a mesma ligação... talvez assim consigas alguma coisa!? mas como tambem não estou dentro do ambito...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.