Do tej pory minęło kilka dni, kiedy próbuję wymyślić, jak rozwiązać ten problem. Przede wszystkim prowadzę witrynę o średnim dziennym wyświetleniu strony wynoszącym 350 000. Wcześniej wszystkie zarządzanie reklamami (śledzenie kliknięć i wyświetleń, które każda reklama wyświetliła) oraz treść były wyświetlane na jednym serwerze z następującą specyfikacją:
Serwer 1 System operacyjny: Windows 2008 R2 64-bit Procesor: Intel® Core ™ i5 - 4 rdzenie RAM: 8 GB Pamięć: 2 dyski twarde 1 TB Przepustowość: 10 TB na miesiąc
Aby poprawić szybkość naszej witryny, postanowiłem oddzielić skrypt zarządzania reklamami do innego serwera dedykowanego, ponieważ na każdej stronie mamy ponad 15 reklamodawców do 30 reklamodawców.
Serwer 2 System operacyjny: Windows 2008 R2 64-bit Procesor: Intel® Core ™ i5 - 4 rdzenie RAM: 4 GB Pamięć: 2 dyski twarde 300 GB Przepustowość: 10 TB na miesiąc
Problem
Problem polega na tym, że Server 1
może obsługiwać zarówno system treści, jak i reklam. Teraz, gdy zabieram system reklam i włączam go Server 2
. Server 2
ledwo może wyświetlać tylko system reklam.
Test
- Po pierwsze przeniosłem do 75% reklam
Server 2
. A następnie wykonać polecenie ping do serwera:ping -t xxxxx
. [Wykonałem polecenie ping przez 10 minut i jego podobny wzór jak poniżej]
Odpowiedź z xxxxx bajtów = 32 czas = 290 ms TTL = 116 Odpowiedź z xxxxx bajtów = 32 czas = 289 ms TTL = 116 Odpowiedź z xxxxx bajtów = 32 czas = 320 ms TTL = 116 Odpowiedź z xxxxx bajtów = 32 czas = 286 ms TTL = 116 Odpowiedź z xxxxx bajtów = 32 czas = 286 ms TTL = 116 Odpowiedź z xxxxx bajtów = 32 czas = 348 ms TTL = 116 Odpowiedź z xxxxx bajtów = 32 czas = 284 ms TTL = 116
- Następnie przeniosłem 100% reklam do
Server 2
. Następnie ponownie wykonaj polecenie ping do serwera. [Wykonałem polecenie ping przez 10 minut i jego podobny wzór jak poniżej]
Odpowiedź z xxxxx bajtów = 32 czas = 290 ms TTL = 116 Upłynął limit czasu żądania Odpowiedź z xxxxx bajtów = 32 czas = 320 ms TTL = 116 Odpowiedź z xxxxx bajtów = 32 czas = 286 ms TTL = 116 Upłynął limit czasu żądania Upłynął limit czasu żądania Odpowiedź z xxxxx bajtów = 32 czas = 284 ms TTL = 116
Próbowanie
- Zwiększ
MaxUserPort
iTcpNumConnection
- Uruchom ponownie serwer
- Zwiększ IIS
Max Instances
iInstance MaxRequests
Zasób serwera
- Wykorzystywane jest tylko 10–15% połączenia sieciowego
- Wykorzystywane jest tylko 10–15% procesora
- Wykorzystywane jest tylko 25% pamięci