* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Aprile 19, 2024, 10:10:50 pm

Inserisci il nome utente, la password e la durata della sessione.

488 Visitatori, 0 Utenti

Autore Topic: Server con Db Firebird 2.5.3  (Letto 3843 volte)

Maverich

  • Scrittore
  • Full Member
  • *****
  • Post: 134
  • Karma: +0/-0
Server con Db Firebird 2.5.3
« il: Dicembre 19, 2014, 10:25:20 am »
ho fatto un piccolo applicativo (CodeTyphon) per testare le prestazioni inserendo Immagini jpeg all'interno di campi Blob all'interno di una tabella FB
usando ZeosLib 7.2.0

carico il file su un TMemoryStream, che poi passo ad un datamodule che lo scrive nel db

I test in Locale o su Pc e Server Virtuali su VirtualBox, danno sempre buone prestazioni, come anche su un vecchio NB in lan con WinXP;
dipende sempre dalle dimensioni dell'immagine, 1,4Mb o 20 Mb chiaramente fa differenza

Passando ad un server reale Ms 2008 in Lan le prestazioni decadono moltissimo, usando il test in locale sul server 127.0.0.1 anche peggio

Codice: [Seleziona]
   ZConnection1.HostName := ipserver;  //127.0.0.1 oppure P del PC su VirtualBox in Lan con Scheda con Bridge
   ZConnection1.Port := 3050;
   ZConnection1.LibraryLocation := ... fbclient.dll;
   ZConnection1.Database := path DB
   //ZConnection1.TransactIsolationLevel         ...> tiSerializable;
   //devo metterlo a meno, qualunque  opzione da errore in compilazione
  //ZConnection1.TransactIsolationLevel := tiSerializable;  ZConnection1.TransactIsolationLevel.tiSerializable
   ZConnection1.Connected;   

fatte le stesse (quasi) prove in Delphi FireDAC e DbExpress le zeosLib arrivano alla 7.1.3 e trovano problemi nell'installazione, ma questo e' OT ,
e i risultati sono  praticamente senza differenze, nelle Zeos non posso definire la modalita' di trasmissione
con FireDAc posso scegliere TcpiIp o IpLocal

Codice: [Seleziona]
  try
      MemStream := TMemoryStream.Create;
      MemStream.LoadFromFile(sFile);
      dData := Now;

      ZQuery1.Insert;
      ZQuery1.FieldByName('ID').AsInteger := Get_ID;
      ZQuery1.FieldByName('DATA').AsDateTime := dData;
      ZQuery1.FieldByName('NOMEFILE').asString := sFile;
      ZQuery1.FieldByName('DIMENSIONE').AsInteger := MemStream.Size;
      (ZQuery1.FieldByName('IMMAGINE') as TBlobField).LoadFromStream(MemStream);
      ZQuery1.Post;
  finally
      MemStream.Free;

  end;

anche provando con ZQuery1.CacheUpdates := true le prestazioni non cambiano

come faccio a capire se le prestazioni scadenti dipendono dal Server MS e dove si puo' migliorare (sia lato Server che Client).

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2870
  • Karma: +20/-4
Re:Server con Db Firebird 2.5.3
« Risposta #1 il: Dicembre 19, 2014, 03:41:23 pm »
Ms2008 immagino sia l'express, solitamente ha qualche limite ma non dovrebbe fare tutta questa differenza.

L'importante è che quando fai le prove (sia locale che rete) sia l'antivirus che il firewall (Edit: sia sul client che sul server) devono essere spenti altrimenti ci sono sempre dubbi (magari un dbserver è rallentato ed un'altro no).

Un'altra cosa che mi è capitata di notare con MsSql2008R2 è che quando client e server sono a dominio la velocità migliora sensibilmente (non ho capito il perché ma è quanto ho riscontrato).
Altra cosa che puoi verificare è l'installazione dei service pack di MsSql. Non so quanti ne siano attualmente ma tra un SP e l'altro le cose cambiano sempre.

Non usare i DNS quando fai i test: indirizzo IP secco (con eventuale nome istanza nel caso MsSql).
Nel caso infatti di frequenti connect/disconnect, la risoluzione del nome porta via parecchio tempo.

Spero di essere stato d'aiuto, fai sapere nel caso vieni a capo di qualcosa di interessante.
« Ultima modifica: Dicembre 19, 2014, 03:43:16 pm da nomorelogic »
Imagination is more important than knowledge (A.Einstein)

Maverich

  • Scrittore
  • Full Member
  • *****
  • Post: 134
  • Karma: +0/-0
Re:Server con Db Firebird 2.5.3
« Risposta #2 il: Dicembre 19, 2014, 05:48:23 pm »
Sicuramente posto gli sviluppi, di questa rogna.

Nel frattempo ho installato Windows Server 2012 RC2 developer, su una macchina Virtuale sicuramente solo i servizi essenziali attivi; ed i trasferimenti sono decisamente veloci, ma probabile che essendo sullo stesso disco non ci sia perdita.

Cosa intendi se server e client sono a dominio e come lo verifico ?

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2870
  • Karma: +20/-4
Re:Server con Db Firebird 2.5.3
« Risposta #3 il: Dicembre 19, 2014, 07:52:26 pm »
il dominio se c'è installato lo si vede già dal login al PC

hai mai visto una mask di login dove oltre ad utente e password ti chiede se:
- accedere a "questo computer"
- accedi a "un nome qualsiasi"

puoi dare un'occhiata qua
http://windows.microsoft.com/it-it/windows7/what-is-the-difference-between-a-domain-a-workgroup-and-a-homegroup

ma se li hai installati tu credo che il dominio non ci sia ;)
Imagination is more important than knowledge (A.Einstein)

 

Recenti

How To

Utenti
  • Utenti in totale: 785
  • Latest: gmax
Stats
  • Post in totale: 18772
  • Topic in totale: 2233
  • Online Today: 609
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 488
Total: 488

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.