Sto studiando l'implementazione di RMI e sono un po 'confuso riguardo alla differenza tra servi, dispatcher e scheletri.
Se ho capito bene:
- I servi sono ciò che effettivamente svolge il lavoro;
- I dispatcher ricevono i messaggi di richiesta dal modulo di comunicazione e selezionano il metodo appropriato nello scheletro (perché lo scheletro non identifica il metodo stesso?)
- Lo scheletro scompone i metodi nel messaggio di richiesta e invoca il metodo nel servant e attende di ricevere la risposta, inoltrandola al proxy.
Ho davvero la sensazione di non averlo capito correttamente ma sono confuso sul motivo per cui abbiamo bisogno di avere un dispatcher per identificare il metodo nello scheletro che, a sua volta, chiamerà il servo per eseguire effettivamente il metodo. Il modulo di comunicazione non può passare la richiesta direttamente al servant? Inoltre, qual è la relazione tra il servo e l'oggetto?