WCF = Windows Configuration Foundation

Dopo l'ennesimo cliente/collega che mi ha fatto notare quanto sia complessa la gestione della configurazione WCF, mi è venuto in mente che probabilmente il nome è stato scelto con un criterio ben preciso:  WCF = Windows Configuration Foundation altro che Communication :)

E' vero che i programmatori sono felicissimi, perchè adesso nel codice bastano pochi attributi per creare delle comunicazioni tra macchine in un lampo con transazioni distribuite, singleton, pattern async, etc., e tutti pensano grande, adesso è tutto più semplice ! Come mai prima non era così ? Risposta semplice: la complessità c'è ancora, ma è stata spostata nella configurazione dei servizi che già di base è qualcosa di allucinante (service, client, endpoint, binding) poi quando ci si addentra nelle parti più avanzate (security, identity, service behavior, endpoint behavior, dimensione mesaggi, chiamate concorrenti, lunghezza coda, etc.) è proprio la fine. Altro che ABC = Address, Binding, Contract :D

Guardate questo schema della struttura parziale (mancano le extension) del file di config e capirete subito di cosa sto parlando:

WCFConfiguration

 Personalmente sono da più di 3 anni che "smanetto" su WCF fin dai tempi di Indigo quindi molti concetti legati alla configurazione li ho acquisiti, ma effettivamente mi accorgo che per moltissimi sono ...  usando testuali parole di un cliente austriaco "pain in the ass".

Quasi quasi mi lancio in una serie di post in italiano dedicati ai file di configurazione di WCF, dite che potrebbe essere utile per lo User Group ? (ndr oltre che per i miei colleghi che cannanno il transactionFlow lasciandolo a false, così le transazioni distribuite "toccano" alla grande :D) (ndr per i clienti: nei file finali era tutto a posto :D)

posted @ giovedì 20 novembre 2008 02:15

Print

Comments on this entry:

# re: WCF = Windows Configuration Foundation

Left by Dario Santarelli at 20/11/2008 11:50
Gravatar
Il fatto che la reale complessità di WCF si trovi nella cfg è diretta conseguenza dell'obiettivo primario di WCF: disaccoppiare il codice di un servizio dalla modalità con cui viene esposto all'esterno.
Un servizio WCF fornisce decisamente una maggiore riusabilità/flessibilità nonché un' assoluta indipendenza della logica del servizio dai protocolli di comunicazione tramite cui viene esposto.
Come hai fatto giustamente notare, il prezzo da pagare è procurarsi lo skill per metter mano alla cfg (il che sappiamo non essere affatto banale). Ad ogni modo l'utilizzo di un tool come SvcConfigEditor può far risparmiare (un po' di) tempo XD

Un saluto

# re: WCF = Windows Configuration Foundation

Left by Ivan Fioravanti at 20/11/2008 23:31
Gravatar
Ciao,
Io sono assolutamente d'accordo sul fatto che WCF sia un passo avanti enorme per la creazione e la gestione di un layer di servizio, però bisogna fare più strada per semplificare la vita di chi deve gestire i file di configurazione, è vero che il tool svcconfigeditor aiuta molto, ma comunque (come in tutte le cose) bisogna capire bene cosa fa ogni singolo parametro per riuscire a mouversi velocemente e risolvere al volo eventuali problematiche. E su qesut'aspetto direi che non c'è ancora moltissimo in rete.

Ciao
Comments have been closed on this topic.