Cóż, to proste.
Socket to komunikacja oparta na plikach i nie można uzyskać dostępu do gniazda z innego komputera.
Z drugiej strony porty są otwarte na świat (w zależności od konfiguracji) i można uzyskać dostęp do mysql z innego komputera za pomocą kombinacji host + port.
Ponadto, o ile rozumiem gniazda, są one po prostu kombinacją hosta + portu, tylko w formacie pliku. Tak więc nie widzę żadnej wyraźnej korzyści z korzystania z żadnego z nich (tyle ile moja wiedza idzie).
Chociaż osobiście wolę używać hosta + portu, ponieważ mój kod staje się bardziej elastyczny, ponieważ mogę go przenieść na inny komputer, nie zmieniając wiele.
Skopiuj wklejanie z jakiegoś starego posta :
Gniazda unixowe są trochę szybsze, ponieważ nie masz narzutu TCP. Jeśli zauważysz, że utrata wydajności jest kwestią obciążenia serwera. Jeśli nie masz bardzo dużego obciążenia serwera, nie rozpoznasz go.
Jeśli używasz Jails (FreeBSD) lub innej technologii wirtualizacji, aby oddzielić np. MySQL-Server od Webserver, często używasz konfiguracji tcp / ip zamiast gniazd. Jednak reguły zapory muszą ograniczać dostęp.
Musisz dowiedzieć się, czy twój system jest obciążony, więc gniazdko jest koniecznością, lub możesz skupić się na ładnym projekcie systemu (oddzielanie usług), wtedy rozwiązanie tcp / ip byłoby lepsze.
Tak więc krótko odpowiedz:
Tak, istnieje różnica w wydajności, gniazda są szybsze. Jeśli nie odczuwasz dużego obciążenia serwera, po prostu wybierz to, co lepiej pasuje do projektu twojego systemu.