Je posais la question suivante lors d'une interview dans une entreprise travaillant sur le cloud computing, et je n'ai pas bien répondu. Toutes les suggestions sur la façon d'analyser cette question seront grandement appréciées. Notre société compte des centaines de millions d'utilisateurs et nous attendons zéro temps de production, expliquons les techniques et les pratiques de programmation qui aident à améliorer la redondance et les capacités de basculement pour les services frontaux, intermédiaires et dorsaux, y compris la base de données. prestations de service.une question de conception de système
Répondre
C'est une question plutôt vaste. S'ils ne s'attendent à aucun temps d'arrêt, dites-leur d'oublier ou de transformer tous leurs profits en redondance. Maintenant, s'ils veulent juste "cinq 9, ou 99,999% de disponibilité" alors nous pouvons parler. :)
Vous pouvez généralement répondre à ce genre de questions avec l'habituelle blague en boîte sur la construction d'un environnement de construction durable et automatique qui inclut des tests unitaires approfondis. L'utilisation de modèles de conception comme MVC ou similaire peut aider à la testabilité. Effectuer des audits de sécurité réguliers. C'est beaucoup plus qu'une question de développement, c'est une question d'architecture de réseau et de serveur, de maintenance de centres de données secondaires et tertiaires, etc. Ces questions vous donnent vraiment l'occasion de donner de l'importance à l'intervieweur.
Cette question est très semblable à la "Impossible Question" from Joel. Il n'y a pas de bonne réponse à cette question.
Je commencerais briser ce en une liste de tous les points de défaillance possibles:
- Database Server
- Database
- Middle Tier
- serveur Middle Tier
- application
- Web Serveur
Ensuite, pour chacun d'entre eux, j'identifierais les raisons de la rupture, et comment en sortir sans avoir de temps d'arrêt. Ceux dont je ne connais pas les réponses, j'en ferais autant. Par exemple, construisons une liste des raisons pour lesquelles un serveur de base de données tombe en panne. Puisque nous recherchons une disponibilité de 100%, nous ignorons rien - peu importe à quel point les cheveux
- matériel va mal
- puissance descend
- Carte réseau va mal
- système d'exploitation se bloque de façon inattendue
- OSMises à niveau de rupture
- système Dumb Admin ou DBA
- Dumb Janitor
Certaines solutions possibles (compte tenu de SQL Server sur Windows back-end)
- serrure sur la porte
- Database Mirroring (avec des tests de basculement réguliers)
- Plusieurs NICS
- Clustering (avec des tests de basculement régulier)
- obtenir de meilleures personnes
Vous pouvez garder essentiellement répondre à cette question jusqu'à ce que l'enquêteur jette l'éponge parce qu'il n'y a vraiment pas l'un-droit réponse à cette question.
- 1. Question de conception: Différents types de transactions dans un système
- 2. Question de conception: Comment concevez-vous un système d'événements récurrents?
- 3. Une conception d'application question
- 4. Question de conception DAL
- 5. Question de conception SQLite
- 6. .NET question de conception
- 7. MVC question de conception
- 8. jQuery question de conception
- 9. Question de conception C++
- 10. MVP, question de conception
- 11. Question de conception
- 12. question de conception
- 13. Question de conception de base de données
- 14. Question de conception de cadre
- 15. Question de conception concernant OpenID
- 16. Master Pages - Question de conception
- 17. Conception de MySQL DataBase Question
- 18. Filetage ASP.NET + question de conception
- 19. formulaires imbriqués (question de conception)
- 20. Conception de composants multithreadés Question
- 21. MVC (CodeIgniter) question de conception
- 22. question de conception de base de données
- 23. Question de conception de base de données
- 24. question de conception pour une bibliothèque SDL \ OpenGL Window & Widget
- 25. Question de conception de table SQLite
- 26. question base de données de conception MySQL
- 27. iphone MVC question de conception de jeu
- 28. Question de conception de service WCF
- 29. Question de conception de programme C++
- 30. Question de conception de l'objectif C (iOS)
Je vote pour ne pas fermer, il pourrait y avoir quelques réponses intéressantes ici. – BobbyShaftoe
C'est une question d'entrevue valide. Pourquoi fermons-nous? –