Sono nuovo per gli attori e sto cercando di implementare un handshake di protocollo molto sequenziale (tramite websocket). Questo è in Scala / Akka.
Va qualcosa del genere:
- La connessione HTTP viene stabilita e aggiornata a websocket
- Il cliente dice CIAO
- Il server risponde CIAO
- Il client dice che voglio usare il subprotocollo X o Y
- Il server dice che supporto Y e inizierò ad usarlo
- Il client inizia a parlare usando il sottoprotocollo Y
La mia domanda è una pratica adeguata sul lato server. Dovrei avere un singolo attore per la connessione, che viene aggiornato con lo stato dell'handshake (ad esempio, con una sequenza come CONNECTED- > RECEIVED_HELLO- > RECEIVED_OFFER- > BEGIN_SUBPROTOCOL- > .. (funziona). .- > CLOSE_CONNECTION) utilizzando i messaggi da auto e amp; chiedere?
O c'è un modello migliore per l'inizializzazione di un tale protocollo seriale / sincrono?