Question

Je suis vraiment se demander ce par procuration, une autre équipe au travail a eu un changement de la demande de notre client.

Le problème est que nos clients ne veulent pas que leurs employés de se connecter avec un utilisateur plus d'un en même temps.Qu'ils sont en lock-out et le partage de connexions.

Puisque c'est sur une batterie de serveurs web, quelle serait la meilleure façon de lutter contre ce problème?

Ne serait pas de mise en cache de la base de données provoquer des problèmes de performances?

Était-ce utile?

La solution

Vous pouvez consulter à l'aide d'un cache distribué système, comme memcached

Il permettrait de résoudre ce problème assez bien (il est BEAUCOUP plus rapide qu'une base de données), et est aussi excellent pour la mise en cache à peu près tout le reste aussi

Autres conseils

C'est juste un coût de faire des affaires.

Oui, la mise en cache d'une base de données est plus lente que la mise en cache sur votre serveur.Mais vous avez à stocker des informations d'état dans un emplacement centralisé, sinon un serveur web n'est pas de savoir ce que les utilisateurs sont connectés à un autre.

Hypothèse:Vous essayez d'empêcher simultané de plusieurs log-ins par un seul utilisateur.

Une opération de base de données lors de la connexion et de la déconnexion ne cause pas un problème de performance.

  • Si vous utilisez un proxy cache, qui va poser un problème:
  • un utilisateur se déconnecte, mais ne sera pas en mesure de se connecter jusqu'à ce que la déconnexion atteint le cache

Votre plus gros problème potentiel pourrait être:

  • si l'application/la box se bloque sans possibilité pour l'utilisateur de se connecter, l'utilisateur de l'état dans la base de données va rester "connecté".

Il dépend de la façon dont l'authentification est effectuée.Si vous stockez de la dernière connexion réussie datetime (quel que soit le backend), alors peut-être vous pouvez modifier le schéma pour stocker un drapeau "logged_in" et qui ne pourront donner lieu à un supplément de coût.(ok, c'est pas propre du tout)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top