[Java lista] DBCP és szaporodó szálak

Zsombor gzsombor at gmail.com
2011. Feb. 25., P, 17:25:40 CET


2011/2/25 MariĂĄk KĂĄlmĂĄn <sirkalmi at kalmiesemese.hu>

> Igazad van, megvan a hiba!
>
> Az ĂŠgatta vilĂĄgon semmi kĂśze sincs a poolomhoz. A hibĂĄt egy olyan
> programrĂŠsz okozta ami tudtommal eddig is kint volt az ĂŠlesben. Lehet,
> hogy mĂŠgsem...
>
> A TopDispatcher filter osztĂĄlyomban az alĂĄbbi kĂłd okozta a szĂĄl
> szaporulatot:
> if(isNewSession) {
>        LookupService service = new LookupService();
>    Future<InetAddress> future =
> service.getByName(request.getRemoteAddr());
>    try {
>        InetAddress ia = future.get(1L, TimeUnit.SECONDS);
>        session.setAttribute("lastHostName", ia.getHostName());
>
>  SessionListenerWrapper.getVisitors(session).put(session.getId(),
> ia.getHostName());
>    } catch (Exception e) {
>                logger.warn(e, e);
>        }
> }
>
> Ez annyit csinĂĄl, hogy Ăşj session esetĂŠn lekĂŠrdezi, hogy honnan ĂŠrkezett
> a kĂŠrĂŠs, majd eltĂĄrolja egy lastHostName nevĹą session attrubĂştumkĂŠnt.
> Annak érdekében, hogy ez ne lassítsa le az oldal betöltődését egy
> LookupService osztĂĄlyban indĂ­tok erre egy Ăşj szĂĄlat ami valami miatt nem
> fejeződik be soha. Azért vagyok értetlen, mert az svn szerint 2010.06.07
> -én került ez a ficsőr a kódba és valamiért most jött ki ez a hiba mikor
> a pool cserĂŠt belehegesztettem.
> Megmondom őszintén, hogy szálkezelés ügyben nem vagyok túl expert, ezt a
> kódot az internetről kukáztam anno.
>
> Ha esetleg Ăśtlete van valakinek, hogy miĂŠrt nem hal meg a szĂĄl a dolga
> vĂŠgeztĂŠvel akkor ne tartsa magĂĄban! ;-)
>
> MariĂĄk KĂĄlmĂĄn
>
>

Esetleg nem kĂŠne mindig Ăşj LookupService-t meg ThreadPool-t lĂŠtrehozni, Ăşgy
vĂŠlem az meg fogja tartani a referenciĂĄt, Ă­gy nem lesz GC-zve soha.

Zs
--------- következő rész ---------
Egy csatolt HTML ĂĄllomĂĄny ĂĄt lett konvertĂĄlva...
URL: http://javagrund.hu/pipermail/javalist/attachments/20110225/25f4678b/attachment.html 


További információk a(z) Javalist levelezőlistáról