Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Firebird i poblem pri opterećenju sistema

[es] :: Pascal / Delphi / Kylix :: Firebird i poblem pri opterećenju sistema

[ Pregleda: 2627 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Brkic

Član broj: 55360
Poruke: 1222
*.dynamic.sbb.co.yu.



Profil

icon Firebird i poblem pri opterećenju sistema27.01.2008. u 12:21 - pre 196 meseci
Problem je u sledećem...
ako trenutno ima jos aktivnih procesa koji opterete sistem sa 100% i pokrenem svoj program koji je povezan sa Firebird-om on ne uspe da se konektuje sa bazom i TBGrid bude prazan. Kada nema kativnih procesa u pozadini radi sve OK.

Ima li tu nekog rešenja pri opterećenju sistema ??
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Firebird i poblem pri opterećenju sistema27.01.2008. u 18:53 - pre 196 meseci
> ako trenutno ima jos aktivnih procesa koji opterete sistem sa 100% i pokrenem svoj program koji je povezan sa Firebird-om on ne
> uspe da se konektuje sa bazom i TBGrid bude prazan. Kada nema kativnih procesa u pozadini radi sve OK.

Dobiješ li poruku o grešci? Windows scheduler daje svakom procesu po određeni time slice tako da ga dobijaju i FB server i tvoj program, ako to što dobiju nije dovoljno da uspostave vezu dok ne istekne timeout (ne znam koliki je), trebalo bi da se dobije greška. Da li se baza nalazi na lokalnom računaru ili na mreži, ako je na lokalnom promeni način pristupa (direktni ili TCP/IP).
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.dynamic.sbb.co.yu.



Profil

icon Re: Firebird i poblem pri opterećenju sistema27.01.2008. u 20:02 - pre 196 meseci
Baza je na lokalnom racunaru.
Program se pokrene sa praznim DBgrind-om i tek kada kliknem na neko dugme,pretragu onda iznaci gresku.

Gde da promenim nacin pristupa (direktni ili TCP/IP),gde se menja i moze li se napraviti izmena na postojecoj bazi i kako se to odredjivanje moze napraviti iz Delphi-a??

Nasao sam u IBExpert-u da se moze odrediti Server (Local / Remote),da li je to sto treba i kako to menjati tj. prilagodjavati iz Delphi coda ??

[Ovu poruku je menjao Brkic dana 27.01.2008. u 21:19 GMT+1]
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Firebird i poblem pri opterećenju sistema27.01.2008. u 21:31 - pre 196 meseci
A greška je? Način pristupa se bira u connection stringu, ako se samo upiše putanja do baze onda je to direktni ako se upiše i IP adresa/DNS name onda je TCP/IP. Npr: 127.0.0.1:C:\Test.db. Koje komponente za pristup koristiš? Šta se dešava kada istu tu bazu dok je procesor opterećen otvoriš iz IBExperta?
 
Odgovor na temu

obucina

Član broj: 38191
Poruke: 723

Jabber: obucina


+7 Profil

icon Re: Firebird i poblem pri opterećenju sistema27.01.2008. u 23:36 - pre 196 meseci
Tvoj problem nema veze sa zauzetoscu procesora, verovatno si nesto pogresno zakljucio. Ali, ako bi bas da probas, podigni prioritet svom procesu na RealTime i vidi sta ce da se desi, ali nece se desiti nista.

Lokalna veza omogucava samo jednu vezu sa bazom podataka. Ako imas npr vezu iz Delphi-ja (Database komponenta ima property Connected na True) i pokrenes svoj program, on ce prijaviti gresku da ne moze da se poveze. Da li je ovo mozda problem?
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Firebird i poblem pri opterećenju sistema28.01.2008. u 01:43 - pre 196 meseci
> Lokalna veza omogucava samo jednu vezu sa bazom podataka.

... ako se koristi FB embedded server, uz FB superserver ili classic server može se uspostaviti proizvoljno konekcija na bazu.
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.dynamic.sbb.co.yu.



Profil

icon Re: Firebird i poblem pri opterećenju sistema28.01.2008. u 08:02 - pre 196 meseci
Koristim Zeos komponente i kod njih nema Connection samo Database i tu upisujem putanju do baze bez IP adrese,to bi trebalo biti direktno.

Sto se tice prioriteta pokusao sam sa

Code:

  //prioritet izvrsenja na HIGHT
  programska_nit := GetCurrentThread();
  SetThreadPriority(programska_nit, THREAD_PRIORITY_HIGHEST);
  //


ali kada pogledam u Task Manager-u prioritet mog programa je i dalje na Normal, da li cod nije dobar ??

Problem se javlja samo pri podizanju windows-a dok se ne pokrene antivirus program i ... tada nece da se pokrene moj program i samo tada mi je zauzece procesora 100%,mozda izbacuje gresku zato sto se Firebird server jos nije podigao ??

evo greske:
SQL Error:unavaible database

evo tacan kod koji radi za promenu prioriteta
Code:

SetPriorityClass(GetCurrentProcess, HIGH_PRIORITY_CLASS);

ali i sa promenom prioriteta greska ostaje,pretpostavljam da je do Firebird server-a,da se zadnji podize pa zato dok se svi programi iz startup-a ne pokrenu program ne radi ili gresim.


[Ovu poruku je menjao Brkic dana 28.01.2008. u 10:09 GMT+1]
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Firebird i poblem pri opterećenju sistema28.01.2008. u 10:10 - pre 196 meseci
> Problem se javlja samo pri podizanju windows-a dok se ne pokrene antivirus program i ... tada nece da se pokrene moj program i samo tada

Ovo je ključna informacija, trebao si je odmah napisati. Može proći nekoliko minuta pre nego se podignu svi servisi, možeš pokušati da promeniš redosled startovanja servisa. Ako je potrebno da tvoj program bude u startupu onda ubaci povezivanje na bazu u petlju ili na timer.
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.dynamic.sbb.co.yu.



Profil

icon Re: Firebird i poblem pri opterećenju sistema28.01.2008. u 15:52 - pre 196 meseci
OK,hvala puno,to sam i ja mislio,probacu preko timera.
 
Odgovor na temu

kalinka

Član broj: 171289
Poruke: 1
212.200.29.*



Profil

icon Re: Firebird i poblem pri opterećenju sistema30.01.2008. u 23:37 - pre 196 meseci
Ja koristim Zeos vec odavno, i naravno da postoji ZConnection. To je prvi komponent koji treba da stavis na form, i preko tog komponenta ce svi ostali
komponenti komunicirati sa bazom.
Treba da podesis ovako :

AutoCommit -> True
Catalog -> ostavi prazno
Connected -> True ( ali tek kad si sve ostalo podesio kako treba )
Database -> D:\Projects\Production\WORK.FDB ( samo primer )
HostName -> ostavi prazno
LoginPrompt -> False
Password -> masterkey
Port -> 0
Protocol -> verzija Firebird-a koji si instalirao
ReadOnly - > False
TransactIsolationLevel -> tiReadCommitted
User -> sysdba

ostala polja ostavi podrazumevano.

Posle ovoga stavi jedan DataSource i jedan ZQuery na form.
Kod DataSource zadaj ZQuery za property DataSet.
Popuni SQL-polje ZQuery-ja ( primer : SELECT FROM MYTABLE ).
Isto kos ZQuery : Connection -> ZConnection.
kad si sve podesio promeni kod ZQuery-ja Active na True. Ako ne dobijes nikakvu gresku sve si dobro uradio.
Posle ovoga mozes konektovati jedan DBGrid sa ZQuery i gotovo.
Kod mene ovo radi vec 3 godine bez problema. Ako nest nije jasno pitaj.
Naravno podrazumeva se da je baza vec napravljena.

 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Firebird i poblem pri opterećenju sistema

[ Pregleda: 2627 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.