Clarifier:
J'utilise mon nom d'hôte public pour me connecter à une base de données MySQL. Le nom d'hôte se résout en IP externe de mon serveur (par exemple 1.2.3.4). Les données que j'envoie / reçois via la connexion MySQL transitent-elles sur Internet? Serait-il plus rapide d'utiliser localhost? Va-t-il occuper la bande passante de mon serveur?
linux
networking
mysql
bandwidth
Tom Marthenal
la source
la source
Si vous utilisez "localhost" comme nom d'hôte pour vous connecter à votre serveur MySQL, MySQL n'utilisera pas TCP, mais des sockets. Cela devrait être le moyen le plus rapide de se connecter à un serveur MySQL fonctionnant localement.
Si votre serveur a une adresse IP externe configurée "correctement", c'est-à-dire qu'il n'est pas derrière un pare-feu ou un proxy dans un réseau interne, le trafic ne quittera pas votre serveur car il sait que l'adresse IP cible est le même système.
la source
lo
adaptateur, qui est un pseudo-adaptateur qui n'est utilisé que pour ces adresses. Je ne suis pas sûr de Windows, mais je pense qu'il a quelque chose de similaire.Vous ne mentionnez rien au sujet de votre équipement de routage ou de commutation, mais vous pouvez vous mettre en quatre pour vous assurer que vos données sortent avant de revenir, mais en réalité presque certainement vos données ne sortiront pas de cette façon.
la source
Non si tout est sur une seule machine, elle ne quitte pas la machine.
la source
si la configuration IP de votre serveur sur sa machine utilise l'adresse IP publique, alors aucun trafic ne quittera votre serveur (mais il est plus sûr d'être sûr et d'utiliser localhost de toute façon pour les avantages de performance)
si votre adresse IP est nat'e et que votre routeur a l'IP publique et que votre serveur a une adresse IP interne, alors au moins le trafic quittera probablement votre serveur et sera reflété sur votre serveur à partir du routeur en supposant que le routeur fait la réflexion du port comme une partie de sa redirection de port - donc dans un sens, aucun trafic ne quittera votre réseau, mais une partie du trafic quittera votre serveur
sans aucune information de configuration du réseau, je ne peux pas être plus définitif que cela
la source
Débranchez votre câble Ethernet ou déconnectez votre wifi et essayez votre connexion à la base de données et vous aurez votre réponse. Pas d'histoires, pas d'histoires!
la source
Vos résultats peuvent différer mais je peux accéder à mon système via l'adresse externe très bien avec le routeur déconnecté d'Internet. Cependant, pour ce faire, j'ai dû configurer le routeur avec l'adresse IP fixe appropriée, car celle-ci est normalement émise par le FAI via DHCP.
Quant à la différence de vitesse, l'utilisation de localhost devrait théoriquement être plus rapide car elle supprime les différents frais généraux impliqués dans la traversée d'un réseau. En termes réels, la différence doit être si minime que vous ne devriez jamais pouvoir la remarquer.
la source
En plus de traceroute (déjà mentionné), vous pouvez utiliser tcpdump ou WireShark et surveiller les connexions mysql acheminées hors de votre hôte. Localhost devrait toujours être plus rapide.
la source