Domanda

Possiamo usare il polling per scoprire gli aggiornamenti da qualche fonte, ad esempio i client connessi a un server web. WCF offre una funzionalità elegante in termini di contratti duplex, in cui, posso mantenere una connessione a un client ed effettuare invocazioni su tale connessione a piacimento. Alcuni sbirri in ufficio stavano discutendo i meriti di entrambe le soluzioni e volevo ottenere un feedback su quando ogni strategia fosse utilizzata al meglio.

È stato utile?

Soluzione

Vorrei usare un meccanismo basato sugli eventi invece del polling. In WCF, puoi farlo facilmente seguendo il framework di pubblicazione e sottoscrizione che Juval Lowy fornisce sul suo sito web, IDesign.net .

Altri suggerimenti

Dipende in parte dal numero di utenti che hai.

Supponi di avere 1.000.000 di utenti che incontreranno problemi nel mantenere molte sessioni.

Ma se il tuo sistema è in grado di rispondere a 1000 richieste di sondaggio al secondo, ogni client può eseguire il polling ogni 1000 secondi.

Penso che Shiraz abbia inchiodato questo, ma volevo dire altre due cose.

  1. Ho avuto problemi con Duplex contratti. Devi avere tutto le tue anatre di fila per quanto riguarda il canale di richiamata ... devi farlo controllalo per assicurarti che sia aperto, ecc. Le cose di IDesign.net sarebbero una quantità minima di codice idraulico dovrai includere.
  2. Se ha senso per la tua soluzione (questo è appropriato solo in alcuni casi situazioni), consente l'associazione MSMQ un client per inviare dati a un servizio in modo asincrono (come Duplex), ma il servizio non è " polling " per messaggi ... viene avvisato quando si entra nella coda attraverso alcuni impianto idraulico sotto le coperte.

    Questo tipo di forza ti costringe a girare comunicazione intorno (il cliente diventa server, il server diventa client), ma se la maggior parte della comunicazione è a senso unico, questo fornirebbe molto di benefici. L'altro vantaggio qui è ovviamente in coda comunicazione - il server può essere giù e non perdere nessun messaggio ... li raccoglierà quando tornerà on-line.

Qualcosa a cui pensare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top