Chiamate ad oggetti esterni#
....descrizione....GROSSO PROBLEMA Performances: in unionfotomarket As400 270 non sopporta il carico di connessioni. Non so se nelle casistiche attuali di webup1 siano già state rilevati questi problemi, ma con un traffico medio di 1000 visite/gg, permanenza media sul sito 5 minuti, pagine medie/visita=9 la macchina SI INGINOCCHIA !!!!!
Hai provato a valutare la connessione tra il numero di utenti attivi sul web e le prestazioni AS400? Mediamente quanti utenti sono collegati contemporaneamente?
Dario
--Dario Foresti, 12-dic-2008 12:04
Dai dati risulta : 1000 / 8h = 125 utenti/h = 2utenti/min... ogni utente visita 9 pagine in 5 minuti = 2 pagine minuto.. empiricamente circa 4 pagine / minuto...
con il test performance di sage settato con 4 utenti / minuto la macchina va in crisi nera !!! (io non so dirti cpw della stessa....so solo il modello 270)
--turchetti, 12-dic-2008 16:35
Questi sono i risultati utilizzando l'utility siege:
Con connessione ad AS400:
root@ubuntu:~# siege -v -c4 -t1M --internet --file=/home/telnext/URLTest/urlsUFM.txt ** SIEGE 2.66 ** Preparing 4 concurrent users for battle. The server is now under siege... Lifting the server siege... done. Transactions: 76 hits Availability: 100.00 % Elapsed time: 60.05 secs Data transferred: 0.86 MB Response time: 2.47 secs Transaction rate: 1.27 trans/sec Throughput: 0.01 MB/sec Concurrency: 3.13 Successful transactions: 61 Failed transactions: 0 Longest transaction: 18.60 Shortest transaction: 0.10
Senza connessione ad AS400 lettura di dati da DB locale:
root@ubuntu:~# siege -v -c4 -t1M --internet --file=/home/telnext/URLTest/urlsUFM.txt ** SIEGE 2.66 ** Preparing 4 concurrent users for battle. The server is now under siege... Lifting the server siege... Done. Transactions: 148 hits Availability: 100.00 % Elapsed time: 59.81 secs Data transferred: 1.99 MB Response time: 1.18 secs Transaction rate: 2.47 trans/sec Throughput: 0.03 MB/sec Concurrency: 2.92 Successful transactions: 121 Failed transactions: 0 Longest transaction: 10.93 Shortest transaction: 0.10
Lanciando l'utility in modo un po' più aggressivo ad esempio con 50 utenti concorrenti utilizzando la connessione ad AS400:
siege -v -c50 -t1M --internet --file=/home/telnext/URLTest/urlsUFM.txt
--Maianti Alberto, 2008-12-15
Ho fatto dei test analoghi a quelli della Telnext usando Resin 3.1 come application server e Microsoft Web Application Stress per la vatutazione dei tempi. Lo script di test consiste in 12 richieste di servizio su coda XML, in particolare richieste di apertura di schede Loocup (quindi del tipo F(EXD;*SCO;) 1(AR;;A01). Se serve posso ripetere le stesse prove richiamando servizi più impegnativi. La versione di Loocup che ho usato io è leggermente modificata rispetto a quella disponibile in Stable ed ha una gestione della sincronizzazione delle richieste meno spinta.
Test 1: 5 thread contemporanei che eseguono ricorsivamente lo script di test per 1 minuto
Overview ================================================================================ Report name: 16/12/2008 12.36.10 Run on: 16/12/2008 12.36.10 Run length: 00:01:00 Web Application Stress Tool Version:1.1.293.1 Notes -------------------------------------------------------------------------------- Test chiamata XML via code su server webup Number of test clients: 1 Number of hits: 386 Requests per Second: 6.43 Socket Statistics -------------------------------------------------------------------------------- Socket Connects: 390 Total Bytes Sent (in KB): 127.56 Bytes Sent Rate (in KB/s): 2.13 Total Bytes Recv (in KB): 3346.12 Bytes Recv Rate (in KB/s): 55.77 Socket Errors -------------------------------------------------------------------------------- Connect: 0 Send: 0 Recv: 0 Timeouts: 0 RDS Results -------------------------------------------------------------------------------- Successful Queries: 0 Script Settings ================================================================================ Server: webup Number of threads: 5 Test length: 00:01:00 Warmup: 00:00:00 Cooldown: 00:00:00 Use Random Delay: No Follow Redirects: Yes Max Redirect Depth: 15 Clients used in test ================================================================================ localhost Clients not used in test ================================================================================ Result Codes Code Description Count ================================================================================ 200 OK 386 Page Summary Page Hits TTFB Avg TTLB Avg Auth Query ================================================================================ GET /servlet/XMLProviderServle 34 5774.85 5775.12 No No GET /servlet/XMLProviderServle 33 396.70 396.73 No No GET /servlet/XMLProviderServle 32 255.88 256.22 No No GET /servlet/XMLProviderServle 32 149.97 150.03 No No GET /servlet/XMLProviderServle 32 280.03 280.34 No No GET /servlet/XMLProviderServle 32 287.66 287.66 No No GET /servlet/XMLProviderServle 32 324.47 324.72 No No GET /servlet/XMLProviderServle 32 59.38 59.41 No No GET /servlet/XMLProviderServle 32 245.00 245.31 No No GET /servlet/XMLProviderServle 32 47.34 47.34 No No GET /servlet/XMLProviderServle 32 297.59 297.84 No No GET /servlet/XMLProviderServle 31 49.81 49.84 No No
Test 1: 50 thread contemporanei che eseguono ricorsivamente lo script di test per 1 minuto
Overview ================================================================================ Report name: 16/12/2008 12.46.36 Run on: 16/12/2008 12.46.36 Run length: 00:01:00 Web Application Stress Tool Version:1.1.293.1 Notes -------------------------------------------------------------------------------- Test chiamata XML via code su server webup Number of test clients: 1 Number of hits: 98 Requests per Second: 1.63 Socket Statistics -------------------------------------------------------------------------------- Socket Connects: 101 Total Bytes Sent (in KB): 33.10 Bytes Sent Rate (in KB/s): 0.55 Total Bytes Recv (in KB): 909.03 Bytes Recv Rate (in KB/s): 15.15 Socket Errors -------------------------------------------------------------------------------- Connect: 0 Send: 0 Recv: 0 Timeouts: 0 RDS Results -------------------------------------------------------------------------------- Successful Queries: 0 Script Settings ================================================================================ Server: webup Number of threads: 50 Test length: 00:01:00 Warmup: 00:00:00 Cooldown: 00:00:00 Use Random Delay: No Follow Redirects: Yes Max Redirect Depth: 15 Clients used in test ================================================================================ localhost Clients not used in test ================================================================================ Result Codes Code Description Count ================================================================================ 200 OK 98 Page Summary Page Hits TTFB Avg TTLB Avg Auth Query ================================================================================ GET /servlet/XMLProviderServle 19 45871.11 45871.32 No No GET /servlet/XMLProviderServle 15 2731.47 2731.47 No No GET /servlet/XMLProviderServle 13 708.23 708.62 No No GET /servlet/XMLProviderServle 9 458.89 458.89 No No GET /servlet/XMLProviderServle 8 650.25 650.63 No No GET /servlet/XMLProviderServle 8 214.25 214.38 No No GET /servlet/XMLProviderServle 6 1076.50 1076.50 No No GET /servlet/XMLProviderServle 5 489.80 489.80 No No GET /servlet/XMLProviderServle 5 866.40 866.80 No No GET /servlet/XMLProviderServle 5 151.60 151.80 No No GET /servlet/XMLProviderServle 3 662.67 663.00 No No GET /servlet/XMLProviderServle 2 245.50 245.50 No No
Analisi dei risultati
- Il numero delle richieste servite è stato di 396 nel caso di 5 connessioni e di 90 nel caso di 50 connessioni contemporanee. Il motivo è da ricercare nel prossimo punto.
- Sulla prima richiesta viene creata la connessione con AS400 e la coda di comunicazione. Nel caso di 5 connessioni contemporanee la prima richiesta è stata servita mediamente in 5 secondi, nel caso di 50 connessioni il tempo si è innalzato a 45 secondi. Evidentemente l'AS400 gradisce poco la connessione simultanea di 50 nuove sessioni (che è comunque una situazione alquanto anomala nella realtà).
- Mi sembra strano che il sistema Telnext vada in crisi già con 4 utenti contemporanei connessi. E' vero che la parte di comunicazione su code non è stata pensata per servire servizi web (e qui c'è da capire perchè si è deciso di portare dal cliente una cosa che non è mai stata nemmeno testata) ma è anche vero che Loocup si basa sullo stesso meccanismo di comunicazione e dai nostri clienti non è raro trovare situazioni con decine di client Loocup aperti e supportati senza che l'AS si sieda.