Ultimamente ci sono state molte novità nel mondo aziendale, specialmente nel web, e ho deciso di costruire un piccolo framework web su Netty per saperne di più sulla programmazione asincrona e sull'architettura basata sugli eventi. Nel mio lavoro quotidiano, stiamo usando Spring per quasi tutto. Voglio rompere queste catene e creare qualcosa di semplice ed efficiente, per saperne di più su questo nuovo modo di farlo.
Per iniziare, ho bisogno di due cose: un contenitore per le dipendenze e un router. Ho anche bisogno di un oggetto front controller, che invierà roba da Netty al rotuer. Stavo pensando di fare uno stack decoratore, che implementa un metodo come questo:
Response handle(Request request)
Quindi, il front controller imposta lo stack e invia il messaggio handle. I decoratori iniziano a correre e quindi puoi ottenere l'oggetto Response finale che verrà inviato dal controller anteriore a Netty.
Anche questo è "orientato agli oggetti" e non guidato dagli eventi? Come posso adattarlo alla mentalità di I / O non bloccante? Il router dovrebbe essere una promessa o qualcosa del genere?
Come vorresti che architetti questo sistema?