Devo scrivere un servizio Windows in .NET 4.6 / C #, che legge i messaggi dalle code RabbitMQ e fa un po 'di elaborazione in base al tipo di messaggio. L'elaborazione include la lettura del messaggio e in base alle regole aziendali, inserisce / aggiorna il database SQL e invia un altro messaggio che conferma l'avvenuta elaborazione del messaggio ricevuto.
L'intero servizio viene eseguito implementando gli eventi OnSatrt () e OnStop () in ServiceBase
class. La lettura delle code e l'elaborazione sono state completate. Il pezzo mancante per me qui è come avere lo stesso servizio di Windows per accettare i comandi http per l'avvio, l'arresto e il riavvio del servizio. Come posso progettare un servizio Windows con funzionalità HTTP e logica di elaborazione 24x7 al suo interno?
Non sto cercando un intero design o un intero codice qui, ho solo bisogno di un'idea su come un servizio Windows in .NET può accettare i comandi http mentre elabora i dati dalle code.