Open milicagnjatovic opened 7 months ago
Iz dela #15.
Http Grizzly server može da ograniči broj upita koji se obrađuju u jednom trenutku na sledeći način:
server.getListener("grizzly").getTransport()
.getWorkerThreadPoolConfig()
.setCorePoolSize(10)
.setMaxPoolSize(10);
Na osnovu testiranja je zaključeno da 10 paralelnih izvršavanja upita neće previše usporiti sistem. Usporavanje sistema pravi problem jer će izvršavanje upita preći vremensko ograničenje. Uklanjanje i uvećanje vremenskog ograničenja nema preterano smisla jer neefikasni upiti mogu da okupiraju sistem bez potrebe. Pre pokretanja gradera na serveru je potrebno izvršiti testiranje koliko zahteva može da se paralelizuje.
Smatram da je potrebno postaviti ograničenje na graderu koliko zahteva može da se obradi, a ne oslanjati se da server neće poslati previše zahteva.
Dodatno razmatranje bi bilo da li praviti red upita za izvršavanje, a ne oslanjati se na mogućnos bibiloteke. Generalno, bibiloteke imaju efikasnije implementiran sistem za oavakav menadžment, pa bi "ručna" implementacija dodatno usporiti. Ako razmatramo ove mogućnosti kada je pitanju konkretna implementacija:
Grizzly server održava 10 paralelnih niti
Ručna obrada velikog broja zahteva
Kombinacija prethodnih predloga
Ovde će biti izložena razmatrana zapažanja iz #14 i #15. Biće izložena rešenja problema opterećenosti sistema.