web-dev-qa-db-fra.com

Qu'est-ce que Memcached? Est-ce bon pour les jeux ou les machines virtuelles?

C'est une question de performance:

Ma machine exécute toujours Ubuntu en tant que principal, et lorsque je me connecte, elle démarre toujours un Windows VM et firefox? Si j'installe memcached, cela améliorera-t-il mes performances?

Je remarque que le processeur est toujours lié à la machine virtuelle Windows, mais pour les performances du disque dur, Memcached fonctionnera-t-il? (Les paramètres par défaut sont-ils suffisants ou dois-je configurer memcached spécifiquement pour la machine virtuelle?

2
Bran

Non, memcached n'est pas bon pour les jeux ou les machines virtuelles.

Memcached est un démon (un programme qui reste en arrière-plan et répond aux demandes) permettant aux développeurs d'applications d'implémenter facilement stockage de mémoire partagé entre des processus séparés, en particulier dans les applications Web.

Traditionnellement, les applications Web exécutent chaque demande Web individuelle dans un environnement distinct qui est initialisé au début de la demande et détruit à la fin, et/ou dans plusieurs processus distincts qui ne partagent aucune mémoire entre eux. Cela ne permet à aucun "objet" ou autre variable stocké en mémoire de persister entre des requêtes distinctes. C'est le cas, par exemple, de PHP.

Memcached est un processus auquel les applications Web peuvent se connecter et utiliser pour stocker des variables persistantes, des valeurs et des objets en mémoire. Les données stockées peuvent alors persister entre différentes requêtes Web.

Cela est extrêmement utile lorsque chaque demande Web a besoin de données provenant d'un mécanisme de stockage relativement lent tel qu'un serveur de base de données accessible via une prise réseau. Au lieu que chaque demande Web provoque une nouvelle demande au serveur de base de données, l'application peut choisir de "mettre en cache" certaines de ces demandes dans une instance memcached afin que les demandes futures puissent simplement y accéder.

Memcached possède également des fonctionnalités avancées permettant à ces objets de mémoire partagée d'être distribués sur plusieurs serveurs, etc.

Memcached doit être installé séparément sur le serveur Web (par exemple Apache, nginx) et le serveur d'applications (par exemple PHP) pour les applications Web qui en ont besoin.

6
thomasrutter

Généralement, "memcached" est une technologie qui améliore les performances du serveur Web. si vous ne lancez pas de serveur web, je pense que ce n'est pas votre souci.

si vous voulez dire que memcached est une RAM, je pense que c'est utile. en outre, je voudrais dire utiliser un SSD à la place du disque dur.

2
Jun