Quelles sont les différences entre stateless et stateful systèmes, et comment font-ils de l'impact du parallélisme?
Expliquer les différences entre les apatrides et dynamique des systèmes, et des impacts de l'etat sur le parallélisme.
- Vous pourrait ressembler à ceci:cs.swarthmore.edu/~newhall/cs85/s08/trilok.pdf
- double possible de Apatrides vs Stateful - je pourrais utiliser un peu d'informations concrètes
- Non, sur Scott, Hanselman du site, c'était une question d'entrevue pour la bonne ingénieurs de haut niveau et je voulais savoir la réponse.
- Question tout droit sortis de hanselman.com/blog/...
- Comment l'entretien?
Vous devez vous connecter pour publier un commentaire.
Un apatrides système peut être vu comme une boîte [noir? ;)] où, à n'importe quel point dans le temps la valeur de la sortie(s) ne dépend que de la valeur de l'entrée(s) [après un certain temps de traitement]
Un stateful système peut être vu comme une boîte où à n'importe quel point dans le temps la valeur de la sortie(s) dépend de la valeur de l'entrée(s) et d'un état interne, donc fondamentalement un système dynamique, c'est comme une machine à état avec "mémoire" que le même jeu de données d'entrée(s) valeur peut générer une sortie(s) en fonction de l'entrée précédente(s) reçue par le système.
De la la programmation parallèle point de vue, un apatrides système, s'il est correctement mis en œuvre, peut être exécutée par plusieurs threads/tâches en même temps sans aucun problème de concurrence [à titre d'exemple penser à une fonction réentrante]
Un stateful système exige que plusieurs threads d'exécution d'accès et de mise à jour de l'état interne du système d'une manière exclusive, donc il y aura un besoin pour une sérialisation [synchronisation] point.
Avec un état de serveur conserve l'état entre les connexions. Un serveur sans état (stateless ne pas.
Ainsi, lorsque vous envoyez une demande à un stateful serveur, il peut créer un type de connexion de l'objet qui effectue le suivi de l'information que vous demandez. Lorsque vous envoyez une demande, la demande fonctionne sur l'état de la demande précédente. Ainsi, vous pouvez envoyer une demande à "ouvrir" quelque chose. Et puis vous pouvez envoyer une demande de "fermer" à plus tard. Entre les deux demandes, que la chose est "ouvert" sur le serveur.
Lorsque vous envoyez une requête à un serveur sans état (stateless, il ne crée pas des objets que suivre les informations concernant vos demandes. Si vous "ouvrez" quelque chose sur le serveur, le serveur ne conserve aucune information à tous de ce que vous avez quelque chose d'ouvert. Un "proche" de l'opération n'aurait aucun sens, puisqu'il n'y aurait rien pour le fermer.
HTTP et NFS sont apatrides protocoles. Chaque demande se dresse sur son propre.
Parfois, les cookies sont utilisés pour ajouter un état à un protocole sans état. En HTTP (pages web), le serveur vous envoie un cookie et puis le navigateur tient l'état, uniquement pour envoyer vers le serveur sur une demande subséquente.
SMB est avec un état de protocole. Un client peut ouvrir un fichier sur le serveur, et le serveur peut refuser à d'autres clients l'accès à ce fichier jusqu'à ce que le client ferme.