Avatar billede johnwies Nybegynder
15. april 2001 - 16:10 Der er 12 kommentarer og
1 løsning

Langsom front/backend over netværk

På arbejdet kører databasen fint(100Mbit netværk)
Men hjemefra er hastigheden uudholdelig(1Mbit)
Kan der foretages nogle ændringer i frontend eller andet der gør det hele hurtigere?
Avatar billede johnwies Nybegynder
15. april 2001 - 16:11 #1
JEg vil lige tilføje, at backend ligger på en NT4.0 filserver hvor jeg kun har brugerret tigheder
15. april 2001 - 21:18 #2
Der er forskellige tiltag, man kan foretage for at optimere hastigheden. Jeg lister et par stykker (frit fra hukommelsen):

- Kopier Frontend, så den ligger lokalt. Derved skal formularer m.m. ikke transporteret over nettet.
- Optimer forespørgsler, så kun de ønskede data udtrækkes. Dvs udvælg kun de kolonner, som er nødvendige i stedet for at benytte Select * From ...
- Brug forespørgsler på formularer (i stedet for tabeller), hvis du ikke behøver alle poster eller alle kolonner.
- Brug filtrering i stedet for søgning.
- hvis en formular ikke har noget VBA-kode tilknyttet, så sæt egenskaben \"Har Modul\" til Nej.
- I indstillinger -> Avanceret kan du øge opdateringsinterval (Refresh Interval). Derved mindskes trafikken til at opdatere skærmbilleder m.m.

Mere kunne jeg ikke lige komme på...skal nok vende tilbage, hvis jeg kommer i tanke om mere.

/Thomas
Avatar billede johnwies Nybegynder
15. april 2001 - 21:39 #3
Forespørgsler på formularer??
er det noget med...
sql = select fra tabellen where fornavn like navn

hvis ja, hvordan fåes data frem, skal de ind i tekstbokse, eller en eller anden lokal tabel..

Jeg er helt grøn her.
15. april 2001 - 22:03 #4
Hej John,

Det skal bare forstås på den måde, at når du f.eks. laver en ny formular skal du baserer den på en forespørgsel i stedet for en tabel (egenskaben Postkilde på formularen). Derved kan du, via forespørgslen, styre hvilke kolonner som skal tages med - og dermed transporteres over netværket.

/Thomas
Avatar billede johnwies Nybegynder
15. april 2001 - 22:17 #5
Hej Thomas.

Jeg har prøvet at lave en formular der slår op i en tabel over opkald(96 poster)Eet af felterne indeholder et medarbejderid der relaterer til en medarbejdertabel.
Formularen slår op i medarbejder tabellen og finder medarbejderid på medarbejderinitialer.
Derefter slåes der op i opkaldtabellen for at finde hvor mange opkald een medarbejder har modtaget.
Dette tager ca. 15 sek. på serveren(1Mbit), medens det kun tager 1 sek. på det lokale net(altså ikke over 1Mbit forbindelsen)

Jeg har min frontend liggende lokalt i begge eks.
15. april 2001 - 23:02 #6
hmm, det er svært at sige ud fra din beskrivelse. Der er mange faktorer, som kan spille ind og dit system kan være skruet sammen på endnu flere forskellige måder. Jeg tør ikke sige hvilke parametre, som der kan skrues på i netop din applikation. Dertil skal jeg vide meget mere...
Jeg går ud fra, at Backend også er Access (og ikke SQL-server eller lign.)? Da Access ikke fungere som server, så er den i mange tilfælde nødsaget til at kopiere hele tabellen ned, for derefter at foretage udvælgelsen (forespørgslen) lokalt. Derfor er det begrænset hvor meget man kan optimere på en Access/Access-applikation.
Hvis data derimod lå på en SQL server eller Oracle server, så er det en helt anden snak...

/Thomas
Avatar billede johnwies Nybegynder
15. april 2001 - 23:14 #7
Det hele er i ren access.
Jeg tænkte no, at access/access ikke er den bedste løsning.
Hvis nu jeg kan få min sysadmin til at lægge en apache server på NT\'eren, er det så ikke muligt at lave en eller anden form for SQL-server.
Eller måske jeg skal opsætte en selvstændig pc med noget et eller andet server lignende på...

Er det ikke sådan, at en evt. server udfører operationerne og sender resultaterne til klienten.
i så fald, kan klienterne så tilføje nye poster til tabellerne.

Eller hvad med noget dataadgangssider der kan oprettes i access??

Det er mange funderinger på een gang, men jeg har bare ikke lyst til at opfinde den dybe tallerken hver gang en ny DB skal opbygges.
15. april 2001 - 23:24 #8
Jeg aner ikke hvad en apache-server gør? Men du har ret i at en database-server udfører operationerne og kun sender resultatet tilbage til klienten. Du har dog ingen problemer med at oprette, redigere og slette poster bare fordi de ligger på en database-server. Det hele fungere (næsten) som hvis det var i ren Access.

Dataadgangssider og web-browser er også en mulighed. Du har dog bare ikke helt de samme muligheder, som du har på en Access-formular. Jeg er ikke så stor tilhænger af dataadgangssider.

På mit arbejde har vi forresten en terminal-server, som gør, at hvis Access er installeret på den, så kan klienten åbne en Access-applikatione herigennem. Og så går det faktisk hurtigt - selv på en ISDN-forbindelse. Ideen her er jo at serveren kører applikationene lokalt og kun sender skærmbilleder til klienten. Brugeren kan stadig oprette, redigere og slette som han plejer.
Det var også en løsning !

/Thomas
Avatar billede johnwies Nybegynder
15. april 2001 - 23:40 #9
hmmm, det ser ud til at tænkeboksen bliver større end jeg havde forestillet mig.
En apacheserver er en almindelig (gratis) webserver som , hvad jeg har læst et eller andet sted, kan opføre sig som SQL server.
Men så roder vi os ud i noget java, php eller helt tredje, tror jeg nok.

Hmm, en terminalserver, hvordan virker den?? Er det noget med telnet.... Eller noget andent,,, bare som start... hvis du forstår

På baggrund af dine svar ser jeg nu, at min nuværende applikation til access ikke kan blive hurtigere over netværk. Det jeg bekymrer mig om er, at når databasen vokser, ja så vokser net-trafikken jo også.

Jeg takker for din tid og håber du svarer på det sidste spørgsmål, her er i hvertfald dine point.
15. april 2001 - 23:56 #10
tak, skal du have John.

Jeg er dog bange for, at jeg ikke lige kan svare dig nærmere på hvem der leverer terminalserveren og hvordan den fungerer. Jeg vil dog gerne prøve at undersøge det på tirsdag, når jeg kommer på arbejde igen...

Mht netværkstrafikken, så vil den ganske rigtigt vokse proportionalt med datamængden, hvis du benytter ren Access.
Hvis du benytter database-server, så vil netværkstrafikken ikke vokse synderligt - her er dog nogle hensyn man skal tage for at optimere (minimere) trafikken.
Terminalserveren burde slet ikke ændre trafikmængden uanset hvor mange data der er...

held og lykke med det :-)

NB: Hvis du får brug for konsulentassistance i fbm. upsizing til f.eks. SQL-server, så kan du kontakte mig ved at klikke på mit navn...
Avatar billede johnwies Nybegynder
16. april 2001 - 00:14 #11
Jeg venter spændt på det med terminalserveren
Tak endnu en gang.  :o)
17. april 2001 - 08:40 #12
hej John,

Jeg har lige forhørt mig om vores terminal server.

Der findes jo flere forskellige produkter, men Microsofts hedder slet og ret \"Windows Terminal Server\" og er en pendant til \"Winframes\".

Mere har jeg ikke kunnet finde ud af indtil nu, men prøv på microsofts hp. Der står garanteret alt om den...

held og lykke
/Thomas
Avatar billede johnwies Nybegynder
17. april 2001 - 20:49 #13
Mange tak, jeg kigger nærmere på MS HP
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester