FAQ |
Kalender |
![]() |
#21 | |||
|
||||
Medlem
|
Citat:
|
|||
![]() |
![]() |
![]() |
#22 | ||
|
|||
Medlem
|
En hel del av mina problem tycks ha berott på att jag inte hade optimerat MySQL för användning med Drupal. När jag nu har gjort detta så kan jag plötsligt köra -n 1000 -c 100:
Kod:
Server Software: Apache/2.2.8 Server Hostname: domain Server Port: 80 Document Path: / Document Length: 12855 bytes Concurrency Level: 100 Time taken for tests: 48.9451 seconds Complete requests: 1000 Failed requests: 0 Write errors: 0 Total transferred: 13416000 bytes HTML transferred: 12855000 bytes Requests per second: 20.83 [#/sec] (mean) Time per request: 4800.945 [ms] (mean) Time per request: 48.009 [ms] (mean, across all concurrent requests) Transfer rate: 272.88 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 9 27.1 0 97 Processing: 324 4574 1935.1 4647 42007 Waiting: 163 4373 779.1 4553 5111 Total: 364 4583 1928.9 4648 42095 Percentage of the requests served within a certain time (ms) 50% 4648 66% 4684 75% 4716 80% 4741 90% 4868 95% 4975 98% 5027 99% 5118 100% 42095 (longest request) Kod:
Server Software: Apache/2.2.8 Server Hostname: domain Server Port: 80 Document Path: / Document Length: 12855 bytes Concurrency Level: 10 Time taken for tests: 4.645497 seconds Complete requests: 100 Failed requests: 0 Write errors: 0 Total transferred: 1341600 bytes HTML transferred: 1285500 bytes Requests per second: 21.53 [#/sec] (mean) Time per request: 464.550 [ms] (mean) Time per request: 46.455 [ms] (mean, across all concurrent requests) Transfer rate: 281.99 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.0 0 0 Processing: 44 451 1058.5 46 4521 Waiting: 39 445 1058.5 40 4515 Total: 44 451 1058.5 46 4521 Percentage of the requests served within a certain time (ms) 50% 46 66% 51 75% 137 80% 170 90% 1564 95% 3171 98% 4482 99% 4521 100% 4521 (longest request) Jag tolkar det här som att det finns ytterligare behov av optimering mellan Drupal och MySQL, och att det primärt inte handlar om att 512MB RAM inte skulle räcka. |
||
![]() |
![]() |
![]() |
#23 | |||
|
||||
Bara ett inlägg till!
|
Vad rörde det sig om för optimeringar?
Är det specifika optimeringar som gäller endast Drupal mot MySQL eller bör dessa tillämpas i andra fall också? Känns ju dumt att man ska behöva optimera ihjäl sig. |
|||
![]() |
![]() |
![]() |
#24 | |||
|
||||
Mycket flitig postare
|
Citat:
Hur stora är din databastabeller för MySQL? Hur ser din my.cnf ut? Det kan ju vara så att webbhotell har optimerat MySQL och har mycket minne i sin MySQL server och läser in alla dina tabeller i ram-minnet. Din VPS har kanske för lite minne och my.cnf är inte optimerad för att läsa in allt i minnet? |
|||
![]() |
![]() |
![]() |
#25 | ||
|
|||
Medlem
|
Citat:
Kod:
[mysqld] max_connections = 800 max_user_connections = 800 key_buffer = 36M myisam_sort_buffer_size = 64M join_buffer_size = 2M read_buffer_size = 2M sort_buffer_size = 3M table_cache = 1024 thread_cache_size = 286 interactive_timeout = 25 wait_timeout = 1800 connect_timeout = 10 max_allowed_packet = 1M max_connect_errors = 999999 query_cache_limit = 1M query_cache_size = 16M query_cache_type = 1 tmp_table_size = 16M |
||
![]() |
![]() |
![]() |
#26 | ||
|
|||
Medlem
|
Funderar på att innan jag går med dedikerad/egen server att försöka koppla ihop flera VPS-konton för bättre skalbarhet (nja) och "load-balancing". Med Xen/VMWare bör det väl vara möjligt att ha den här uppsättningen:
VPS-konto #1 på fysisk maskin A: Apache load-balancer VPS-konto #2 på fysisk maskin B: Drupal 1 VPS-konto #3 på fysisk maskin C: Drupal 2 VPS-konto #4 på fysisk maskin D: MySQL Om jag har räknat rätt, bör det här vara ett mycket bättre ekonomiskt alternativ som samtidigt ger en högre kapacitet än att ha en egen dedikerad server (beror ju lite på hur den är konfigurerad). Kan det stämma? Är det här upplägget också möjligt med OpenVZ? |
||
![]() |
![]() |
![]() |
#27 | ||
|
|||
Klarade millennium-buggen
|
Citat:
Men om du vet att du blir placerad på flera fysiska VPS servrar så kan prestandan öka självklart. Men själv brukar jag köra en fysisk lastbalanserare. |
||
![]() |
![]() |
![]() |
#28 | ||
|
|||
Medlem
|
Så man kan i regel inte begära att få placering på olika fysisk maskiner? Den faktiska kostnaden hamnar kanske i nivå med en ganska medelmåttig dedikerad server, men min tanke var att man får betydligt mer för pengarna i termer av prestanda? Dessutom behövs kanske inte så mycket RAM för varje enskilt VPS-konto eftersom de kommer att ha en ganska så specifika uppgifter? Lastbalanseraren behöver väl inte så mycket minne? Frågan är också om Drupalservrarna behöver så mycket. Däremot är det kanske klokt att ha en rätt så tilltaget RAM-minne för MySQL-kontot.
Är det någon leverantör som kan acceptera ett dylikt upplägg och dessutom garantera att sprida VPS-kontona över olika fysiska maskiner? |
||
![]() |
![]() |
![]() |
#29 | ||
|
|||
Klarade millennium-buggen
|
Beror på vad olika leverantörer kan erbjuda och hur flexibla dom är, dock bör du ändå ha minst 256MB minne på varje VPS.
Dock så kan du ju lika väl köpa en dedikerad server och själv köra vmware på för att verkligen kunna använda flera core till max. |
||
![]() |
![]() |
![]() |
#30 | |||
|
||||
Mycket flitig postare
|
Citat:
Det är ju ingen merkostnad för dom (om de nu inte råkar ha en enda hårdvara ![]() Du kan köra DNS "round robin" istället för en "dyr" lastbalanserare. |
|||
![]() |
![]() |
Svara |
|
|