Ma cosa devo usare?

Pagina 1 di 2 1 2 ultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    bit
    Registrato
    Feb 2001
    Località
    Cuneo
    Messaggi
    29

    Predefinito

    Ciao a tutti, devo realizzare un programma gestionale (Delphi 5)
    che permetterà di avere un database, pensavo InterBase, condiviso
    da 1 o più client. I vari client potranno essere distribuiti su una
    rete locale (indirizzo IP del PC) ma anche attraverso il web
    (indirizzo IP della connessione).
    Solo il server possiede le tecnologie per accedere al DB.

    Inizialmente pensavo di gestire le comunicazioni attraverso protocollo TCP/IP definito
    da me + socket standard di Delphi, gestendo le condivisioni e i conflitti...
    molto macchinoso e forse anche molto lento.

    Come posso gestire le comunicazioni?
    Leggendo un po' di documentazione delphi ho visto che le possibilità
    sono molte: MIDAS, MTS, ADO... ma che confusione, non ho trovato
    un testo chiaro!!!

    Midas mi sembre la tecnologia più sicura e veloce e si può implementare
    con un database InterBase ma richieda circa 600.000 mila di licenza per
    poter essere utilizzato dall'utente finale senza rischi legali.

    Per quel che riguarda MTS e ADO non ho capito bene quali potrebbero essere
    i vantaggi o svantaggi rispetto a Midas, questi due richiedono una licenza
    aggiuntiva per poter essere utilizzati?

    Grazie.
    Camusso Giancarlo
    giancamu@libero.it


  2. #2
    mebibyte L'avatar di The_qwer
    Registrato
    Sep 2000
    Località
    Varese
    Età
    24
    Messaggi
    796

    Predefinito

    Allora, se tu, per forza devi metterci un programma in Delphi sul server non so come aiutarti, se invece sei disposto a mettere questo sul server è un'altro paio di maniche... Infatti, totalemnte gratis, sul server puoi installare un database MySQL (Molto veloce, flessibile e freeware) più un server web Apache (Anche questo Freeware) che sappia eseguire script PHP4 (Anche questi Freeware e velocissimi) così facendo da un client Delphi, usando i socket potrai ricevere qualunque query od informazione dal database semplicemente mandando, tramite il "banale" protocollo http, delle stringhe al server apache.
    Sia chiaro che CMQ usare un server web non significa che poi il database è accessibile a tutti, il PHP è uno script lato Server che viene cioè eseguito sul server, esso può autenticare un'utente e solo dopo mandargli i dati prelevati...

    Se puoi scegliere la seconda soluzione ti prego di farmelo sapere, sennò è inutile che sto a spiegarti tutto.

    Bye!

  3. #3
    bit
    Registrato
    Feb 2001
    Località
    Cuneo
    Messaggi
    29

    Predefinito

    Grazie per l'aiuto ma, la parte Server risiederà su un pc normale all'interno di una rete locale.
    Per esempio si potranno avere:

    - postazione singola, nonoutente
    - due client, dove su uno di questi risiederà anche il server oppure risiederà su una terza macchina.
    Altro a questo, ci potrà essere un terzo client che accede ai dati attraverso internet.

    Metti caso di un ufficio con due dipendenti in sede e uno in una sede distaccata.

  4. #4
    mebibyte L'avatar di The_qwer
    Registrato
    Sep 2000
    Località
    Varese
    Età
    24
    Messaggi
    796

    Predefinito

    Si, scusa, ma per far girare Apache, PHP4 e MySQL mica serve un PC "speciale", li sto facendo girare in questo momento in Win2000... E soo servizi in backgroung, cioè che non li vedi, uttavia si possono controllare con delle apposite utility... E poi questo sistema funge anche in rete locale, basta che per i computer locali condividi la connessione internet...

    Se CMQ non va bene, io ti consiglio la soluzione con i socket che cmq non è lenta, i dati passati tra client e server comprimili magari con il Gzip, c'è ingiro la libreria Zlib.dll freeware e opensource che offre un'ottima e veloce compressione superirore anche a quella offerta da WinZip...

    Bye!

  5. #5
    nibble L'avatar di Francesco de Francesco
    Registrato
    Sep 2001
    Località
    Milano
    Messaggi
    64

    Predefinito

    La soluzione classica per un gestionale multiutente implementato con Delphi, normalmente prevede:
    - un server con Interbase
    - clients con front-end Delphi e comunicazioni tramite BDE (distribuito con Interbase e Delphi)

    Il server con Interbase è visto sia tramite rete locale sia tramite rete geografica via IP. L'unico vincolo è che l'IP del server deve essere statico. Naturalemte occorre aprire le porte del router per far passare i servizi del BDE (operazione semplicissima).
    Le comunicazioni sono gestite in modo trasparente dal BDE rispetto al front-end realizzato in Delphi per i clients. Questi lavorano senza sapere se il motore è su un server in LAN o in WAN Internet.

    Altra possibilità è usare, sempre tramite il BDE, connessioni ODBC. A questo punto il database su server può essere uno qualunque che supporti tale interfaccia. La scelta dipenderà solo da quanto vuole spendere il cliente (Interbase, SqlServer, Access).

    Altra possibilità (sempre se vuoi restare con i clients sviluppati tramite Delphi) è sviluppare un front-end che via HTTP acceda ad un server web su cui tramite ASP server-side, siano letti i dati da un database che a questo punto può essere quasi uno qualunque. La connessione HTTP, però, secondo alcune scuole di pensiero non si presta molto al gestionale.
    Tieni presente, come forse già sai, che il fatto di avere un server web, non implica che tu debba accedere tramite Internet. Un server web, in realtà, può essere impiegato anche tramite rete locale. Ti ritrovi, quindi ancora una volta, ad avere un solo client per entrambe le situazioni.
    Buono studio


  6. #6
    bit
    Registrato
    Feb 2001
    Località
    Cuneo
    Messaggi
    29

    Predefinito

    Grazie, pensavo di utilizzare i componenti midas per far colloquiare i client con il server: è una buona soluzione ( a parte il costo della licenza di utilizzo). Il db sarà un interbase.

    Senza utilizzare i componenti midas si possono tenere sitto controllo gli aggirnamenti multipli che due client possono fare in contemporanea su uno stesso record? Grazie molte

  7. #7
    nibble L'avatar di Francesco de Francesco
    Registrato
    Sep 2001
    Località
    Milano
    Messaggi
    64

    Predefinito

    Originariamente postato da gian1308
    Grazie, pensavo di utilizzare i componenti midas per far colloquiare i client con il server: è una buona soluzione ( a parte il costo della licenza di utilizzo). Il db sarà un interbase.

    Senza utilizzare i componenti midas si possono tenere sitto controllo gli aggirnamenti multipli che due client possono fare in contemporanea su uno stesso record? Grazie molte
    Certamente. La cosa può fare direttamente con le primitive di Delphi ed Interbase. Hai tutti gli strumenti che ti servono.
    Lock ottimistici e pessimistici. Possibilità di specificare il livello di isolamento desiderato. Transazioni con commit e rollback. Con le ultime implementazioni, se non ricordo male hai anche il two phase commit.

    Inoltre se usi SQL tramite le execute puoi usare tutte le istruzioni tipiche del linguaggio.
    Inoltre, se non bastasse ancora, hai le stored procedure per migliorare le performances (però ti leghi ad Interbase) e poi le UDF di Interbase con cui puoi accedere al suo kernel.
    Se vuoi, hai da studiare per anni senza comprare nulla di diverso da Delphi e Interbase.

    [Modificato da Francesco de Francesco il 14-09-2001 alle 11:27]

  8. #8
    bit
    Registrato
    Feb 2001
    Località
    Cuneo
    Messaggi
    29

    Predefinito

    OK, quindi senza utilizzare il midas: si riescono a gestire bene anche + client connessi contemporaneamente?

  9. #9
    nibble L'avatar di Francesco de Francesco
    Registrato
    Sep 2001
    Località
    Milano
    Messaggi
    64

    Predefinito

    Originariamente postato da gian1308
    OK, quindi senza utilizzare il midas: si riescono a gestire bene anche + client connessi contemporaneamente?
    Assolutamente si. Delphi e Interbase sono stati studiati apposta, come coppia Front-End/Back-End.

    Ti dirò di più.
    Conosco due gestionali ERP che con i due strumenti gestiscono anche 50 clients (ed uno arriva a 100), non solo due.

  10. #10
    bit
    Registrato
    Feb 2001
    Località
    Cuneo
    Messaggi
    29

    Predefinito

    Bene, quindi, vediamo se ho capito bene:

    con InterBase 6 creo un "Local Server" specificando il "Network protocol" come TCP/IP. (le altre informazioni sono standard). OK?

    All'interno crea un db normale, come se fosse per un singolo utente. OK?

    Con Delphi mi creo in mio programma che gestire direttamento il db interbase anche se questo si trova su un'altro macchina.
    Sulla macchina dove installero il programma (client) dovro' anche installare Interbase (adesso opensource) OK?

    I componenti da utilizzare in delphi sono quelli di IBExpress. OK?

    E i conflitti di aggiornamento? Una postazione edita un record, un'altra edita lo stesso record. La seconda modifica e salva i dati prima delle postazione 1: come viene gestito (con quali componenti, se ce ne sono) la diversita dei dati che la postazione 1 ha letto e che adesso vuole modificare?

    Grazie molto per l'aiuto.
    Giancarlo

Pagina 1 di 2 1 2 ultimo

Informazioni Thread

Users Browsing this Thread

Ci sono attualmente 1 utenti che stanno visualizzando questa discussione. (0 utenti e 1 ospiti)

Discussioni simili

  1. Cosa posso usare come vaschetta stagna H2O??
    By f3dfx in forum -= Water Cooling =-
    Risposte: 5
    Ultimo messaggio: 04-03-2002, 16:36
  2. che detonator devo usare!!???
    By lapulcemannara in forum -= Schede video e acceleratori =-
    Risposte: 2
    Ultimo messaggio: 25-04-2001, 23:29
  3. Per usare una peltier devo per forza mettere il coldplate????
    By renzos in forum -= Overclocking e CPU =-
    Risposte: 4
    Ultimo messaggio: 09-04-2001, 13:46
  4. KE BIOS DEVO USARE PER ABIT?
    By BastardoDiMerda in forum -= Hardware generico =-
    Risposte: 2
    Ultimo messaggio: 17-01-2001, 21:15
  5. Quale uscita devo usare?
    By in forum -= Hardware generico =-
    Risposte: 1
    Ultimo messaggio: 03-07-2000, 16:10

Tags

Regole d'invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
nexthardware.com - © 2002-2022