![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 3.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Pytam, bo być może ktoś testował podobne rozwiązanie. mam do czynienia z pewnym projektem e-commerce. Mój klient życzy sobie aby czasami dokonać pewnych zmian, głównie w wzglądzie lub dodanie nowych funkcjonalności. Zmiany te mają być dokonywane na "żywym organiźmie" i do czasu akceptacji, widoczne tylko dla mojego klienta, ale nie dla jego klientów. Dlatego pomyślałem, że może zrobię kopię serwisu i na niej będę dokonywać zmian, a po ich akceptacji wzkonam sznchronizację kopii z orginałem. Problem w tym, że jak w kopii zmienię w pliku konfiguracyjnym "localhost" na IP, to po synchronizacji taka zmiana dokona się też w oryginalnym pliku. I teraz pytanie: Jak zmieni się wydajność gdy orginalna strona będzie lączyć się z bazą, która znajduje się na tym samym hoście ale przez zewnętrzne IP a nie przez "localhost". |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
W teorii różnie, serwer może automatem przekierować na loopback ze względu na odwołanie do przypisanego adresu na interfejsie.
A nie możesz po prostu wykluczyć plik z danymi do BD z aktualizacji ? Albo sprawdź po prostu namacalnie czy wydajność nie spada drastycznie, jak nie to po przeniesieniu większych paczek zmian zmieniaj host na localhost. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 3.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
Wolę unikać sztuacji z poprawianiem, bo to może być trochę zawodne rozwiązanie. Równie zawodne jak moja pamięć (IMG:style_emoticons/default/smile.gif)
Odebrałem poprostu prawa zapisu przez FTP dla pliku konfiguracyjnego i teraz jak nie odznaczę go przy synchronizacji, to otrzymiję info o błędzie i tyle. Może nie jest to najfachowsze rozwiązanie, ale skuteczne (IMG:style_emoticons/default/smile.gif) . |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Każde rozwiązanie nawet najbardziej debilne prowadzące do właściwego rozwiązania jest dobre (choć nie zawsze poprawne (IMG:style_emoticons/default/wink.gif) )
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 31 Dołączył: 10.01.2007 Skąd: Bydgoszcz/Inowrocław Ostrzeżenie: (0%) ![]() ![]() |
Szczerze powiedziawszy, to dla mysql, do którego dostęp jest przez TCP (a nie przez bezpośredni dostęp do socketa) nie ma znaczenia, czy będzie to localhost, czy IP. do komunikacji użyty będzie protokół sieciowy, niezależnie z jakiego źródła (localhost = 127.0.0.1). Wybierając inne IP droga routingu wewnętrznego będzie podobna co w przypadku localhost, zapytanie -> interfejs -> zwrot. Porownaj pingi localhost z adresem zewn (ale na serwerze). Ofc mowie tu o sytuacji gdzie maszyna z zewnetrznym IP to ta sama, co z localhost (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 3.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
Dokładnie o tak sytuację chodzi. Adres IP przypisany jest do jednego z interfejsów localhosta. Chodzi o to, żeby pakiety nie latały se do Hongkongu i z powrotem.
[edit] Z ciekawości sprawdziłem pingi, dla localhost: rtt min/avg/max/mdev = 0.039/0.053/0.077/0.017 ms a dla IP rtt min/avg/max/mdev = 0.033/0.041/0.046/0.005 ms i jeszcze dla domeny hosta: rtt min/avg/max/mdev = 0.026/0.035/0.046/0.010 ms Z tego można by wysnuć wniosek, że połączenie przez IP powinno być szybsz niż przez localhost (IMG:style_emoticons/default/axesmiley.png) Może spowodowane jest to tym, że po wywołaniu localhost na początku system przeszukuje plik hosts w celu odnalezienia IP a potem łączy się z 127.0.0.1 (IMG:style_emoticons/default/sciana.gif) Może ktoś zna się na tym lepiej, więc niech się wypowie. Ten post edytował zorobabel 7.05.2015, 15:32:56 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 150 Pomógł: 31 Dołączył: 10.01.2007 Skąd: Bydgoszcz/Inowrocław Ostrzeżenie: (0%) ![]() ![]() |
To sa tak nieznaczne wartosci, ze mogly byc spowodowane chwilowym wzrostem obciazenia. Odpytujesz te sama maszyne, konwersja localhost > 127.0.0.1 raczej nie ma związku jest ona jednorazowa (tlumaczona na IP przed wykonaniem pinga), Trasę można sprawdzić i porównać:
traceroute 127.0.0.1 i traceroute IP w obydwu przypadkach dotyczy to tej samej maszyny i powinno zawierać tylko 1 pozycję Jednak zanim zmienisz z localhost na IP w mysql musisz sprawdzić, jak wygląda sprawa z użytkownikiem w mysql, użytkownik@localhost != użytkownik@IP czy użytkownik@%! Ten post edytował salfunglandyare 7.05.2015, 18:03:48 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 79 Dołączył: 25.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Szczerze powiedziawszy, to dla mysql, do którego dostęp jest przez TCP (a nie przez bezpośredni dostęp do socketa) nie ma znaczenia, czy będzie to localhost, czy IP. do komunikacji użyty będzie protokół sieciowy, niezależnie z jakiego źródła (localhost = 127.0.0.1). Jeśli do serwera jest dostęp przez socket i przez TCP/IP to pod podaniu localhost połączenie idzie przez socket, a przy 127.0.0.1 przez TCP/IP. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 22:00 |