[Javalist] play / c3p0pooledconn ...
Istvan Verhas
istvan at verhas.com
2012. Jan. 24., K, 11:38:28 CET
Ha a gépnek nagy a load-ja (függetlenül attól, hogy fizikai vagy virtuális) akkor első lépésben azt kell kideríteni, hogy miért és nem azt, hogy mi okozza. A load csak annyit tesz, hogy időegység alatt mennyi az elvégzendő feladat vagy éppen mennyi vár a sorára. A miértre alapvetően két válasz lehetséges: processzor, I/O. Ha processzor nem pörög 100%-on akkor az I/O-ban a következő problémák lehetnek: kevés a memória és swap-el, lassú a diszk hozzáférés és írásra/olvasásra vár vagy a network kevés és arra vár. Mindezek kiderítéséhez egy kellemes eszköz a vmstat.
Virtuális környezetben személyes tapasztalatom szerint a diszk hozzáférés szokott belassulni ha nincs jól konfigurálva, de ez csak egy nagyon kis mintavételezés.
Verhás István
JIRA szakértő
Verhás & Verhás Szoftver Manufaktúra Kft.
istvan at verhas.com
t: +36(30)3997117
skype: verhasi
On Jan 24, 2012, at 11:23 AM, Balázs Hollósi wrote:
> sziasztok
>
> igazából olyan vizeken evezek, ahol nem sok helyismeretem van, ezért
> bármi nemű segítséget köszönök.
>
> tehát. van egy play framework webes alkalmazásom, postgres
> adatbázissal. eddig tök jól ment minden, viszont a hosting cég ahol
> van (vps) konfigolt egyet, és most érdekességek történnek. a cég
> alapvetően konstruktív, már átraktak egy másik node-ra, ahol a config
> ua, de a vas más, ergo a memória hibát meg a többi hw parát úgy
> gondolom kizárhatom. eddig a vps 4 cpu-t látott (/proc/cpuinfo) most
> egy magot, amelyik azt mondja magáról hogy 4 magos, gondolom a
> virtualizáción állítottak, azért lett más, lényegében a sebesség
> maradt, ezzel sincs gondom.
>
> a jelenség hogy egyszercsak felugrik a java process load-ja 100%-ra,
> még egy darabig működik az alkalmazás, de rosszabb esetben segfault-ol
> a vm, jobbik esetben izzasztja a vasat, és 4-5ös load mellett azért
> néha kiszolgál egy-egy requestet. ja igen, demo alkalmazás, bármilyen
> "eszköz" engedélyezett :)
>
> debug módban elindítottam a vm-et, és remote rácsatlakoztam. eclipse
> alatt szép sorban suspend a szálakra, így meglett a bőnös (legnagyobb
> meglepetésre nem a play szál).
>
> a bűnös thread stack:
>
>
> Daemon Thread [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0]
> (Suspended)
> Finalizer.add() line: 42
> Finalizer.<init>(Object) line: 67
> Finalizer.register(Object) line: 72
> Jdbc4Statement(Object).<init>() line: 20
> Jdbc4Statement(AbstractJdbc2Statement).<init>(AbstractJdbc2Connection,
> int, int) line: 135
> Jdbc4Statement(AbstractJdbc3Statement).<init>(AbstractJdbc3Connection,
> int, int, int) line: 36
> Jdbc4Statement(AbstractJdbc3gStatement).<init>(AbstractJdbc3Connection,
> int, int, int) line: 23
> Jdbc4Statement(AbstractJdbc4Statement).<init>(Jdbc4Connection, int,
> int, int) line: 26
> Jdbc4Statement.<init>(Jdbc4Connection, int, int, int) line: 25
> Jdbc4Connection.createStatement(int, int, int) line: 30
> Jdbc4Connection(AbstractJdbc3Connection).createStatement(int,
> int) line: 231
> Jdbc4DatabaseMetaData(AbstractJdbc2DatabaseMetaData).createMetaDataStatement()
> line: 4266
> Jdbc4DatabaseMetaData(AbstractJdbc2DatabaseMetaData).getTables(String,
> String, String, String[]) line: 2069
> DefaultConnectionTester.activeCheckConnectionNoQuery(Connection,
> Throwable[]) line: 185
> DefaultConnectionTester.activeCheckConnection(Connection, String,
> Throwable[]) line: 62
> DefaultConnectionTester(AbstractConnectionTester).activeCheckConnection(Connection)
> line: 67
> C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.testPooledConnection(Object)
> line: 368
> C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.refurbishIdleResource(Object)
> line: 310
> BasicResourcePool$AsyncTestIdleResourceTask.run() line: 1999
> ThreadPoolAsynchronousRunner$PoolThread.run() line: 547
>
> ez ha jól tudom db pool cucc. viszont otthon, meg eddig kint is ua
> verzió (play embeddelt) fut, otthon még most is, kint eddig stabil
> volt.
> első körben a kérdésem, találkozott-e már valaki hasonló parával.
> ismert-e hogy 1 (virtuális) magos környezetben gondok lennének
> vele? egyéb javaslat?
>
> ezer köszi előre is,
> B
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3015 bytes
Desc: not available
URL: <http://lists.javaforum.hu/pipermail/javalist/attachments/20120124/dac62a7d/attachment.bin>
További információk a(z) Javalist levelezőlistáról