Ruuzx Posted July 31, 2015 Report Share Posted July 31, 2015 Sveiki biedri! Esmu pilnīgi zaļš iekš tās Javas un Orākula, bet nu ir tā, ka nācās pārņemt vienu sistēmu/aplikāciju. Jāuztur un tagad arī jāatrisina viens gļuks. Centīšos pēc iespējas saprotamāk un skaidrāk/īsāk. Ir aizdoma, ka ir problēmas ar DB konekcijām. serveris1 - stāv veca sistēma, ar vecu Tomcatu utt. Oracle DB atrodas fiziski citur (katrā ziņā ne uz tā paša PC vai tajā pašā telpā). Šis serveris griežās jau gadiem ilgi. Virsū aplikācija, lietotāju konti glabājas DB, visa informācija tiek ievietota un glabāta uz DB. serveris2 - tikko fresh apinstalēta sistēma ar jauno Tomcatu utt. Uz šī uzlikta aplikācijas kopija no serveris1. Viss darbojas, viss griežas. Problēma - šorīt ejot uz serveris1 adresi, atver pirmo lapu, ievadu login, pass, tālāk loading un nekas nenotiek. Kā jau serveris2 ir fresh new, domāju mēģināšu no tā - tas pats! Restartēju abus serverus - aiziet! Ja serveris2 darbotos, un serveris1 darbotos tikai pēc restarta, būtu skaidrs, ka kaut kas dēļ servera/sistēmas, bet dīvaini ir tas, ka abi negriežās līdz netiek restartēti. Restartējot izveidojas jauna konekcija ar DB, kas teiksim nakts laikā un citreiz pa dienu zūd? Varbūt DB ir ierobežots konekciju daudzums, kas restartējot serverus resetojas un atkal viss darbojās? Kaut gan no jaunā serveris2 jau ir tikai viens konekcija no mana konta un viss. p.s. Pieminēšu gan, ka šis gļuks ir arī pa dienu, vidēji reizi dienā, katru dienu. Citreiz ir tā, ka esot iekšā sistēmā, verot vaļā kādu sadaļu (kur jāielādē dati no DB) - nekas nenotiek un jārestartē serveris! NETIEK restartērts ORACLE DB serveris, bet gan aplikāciju serveri. Kā pārbaudīt konekciju ar DB, ar ko testēt šo savstarpējo sadarbību? Varbūt kaut kur logfailos saglabājas šādas problēmas? Quote Link to comment Share on other sites More sharing options...
Roze Posted July 31, 2015 Report Share Posted July 31, 2015 Orākuļa konekcijas testiem vismaz kādreiz izmantoja tnsping (nāca kopā ar orākula klientu). Bet nu Tomcatam vajadzētu būt logiem pēc kuriem tad varētu spriest kas par šaizi notiek. Quote Link to comment Share on other sites More sharing options...
black Posted August 9, 2015 Report Share Posted August 9, 2015 Šī problēma ir veca, kā pasaule. Neredzot pašu kodu, es minēšu, ka programmētājs kodā tur atvērtu datubāzes pieslēgumu (connection) visu aplikācijas/klases darbības laiku. Viens no risinājumiem būtu sadot programmētājam pa nagiem, un ieteikt turpmāk izmantot connection pool'us. Man pēdējā laikā ļoti patīk HikariCP bibliotēka. Runā, ka esot ātrāka un stabilāka par Apache Commons DBCP. Kā pārbaudīt manu teoriju? Norausti serverim tīklu - vai nu brutāli izrauj kabeli, vai uz mirkli atslēdz serveri no tīkla sava rūtera galā. Mēģini ielogoties, un pārbaudi, vai log failos rādās errori (tiem būtu jābūt redzamiem). Tad pieslēdz tīklu atpakaļ. Aplikācijai būtu jābūt spējīgai datubāzes konekciju atjaunot. Ja viņa nespēj, tad pārej pie došanas programmētājam pa nagiem daļas :) Quote Link to comment Share on other sites More sharing options...
Ruuzx Posted August 12, 2015 Author Report Share Posted August 12, 2015 Ok, paldies, pārbaudīšu! Tagad gan pēdējā laikā vairāk lec ārā šis errors.. Quote Link to comment Share on other sites More sharing options...
Kavacky Posted August 12, 2015 Report Share Posted August 12, 2015 Oh, the irony. Garbage collectoram nepietiek atmiņas, lai satīrītu atmiņu. :D Quote Link to comment Share on other sites More sharing options...
Ruuzx Posted August 12, 2015 Author Report Share Posted August 12, 2015 Palielināt heap size? Vienam failam arī padaudz errori attiecībā uz Duplicate local variable result. Īsti pat nezinu kā efektīvāk viņus salabot, tā lai nenobrūk puse sistēmas. :D Quote Link to comment Share on other sites More sharing options...
codez Posted August 12, 2015 Report Share Posted August 12, 2015 Šī kļūda rodas, kad GC mēģina atbrīvot atmiņu un pavada 98% CPU laika to darot, bet negūstot nepieciešamos rezultātus. Parasti tas notiek tad, kad atmiņa ir pārpildīta un nav ko atbrīvot, lai kā GC censtos. Pēc kāda laiciņa viņš izmet šo exceptionu, lai nenotiktu bezjēdzīga programmas darbošanās. Quote Link to comment Share on other sites More sharing options...
Ruuzx Posted September 7, 2015 Author Report Share Posted September 7, 2015 Kādi komentāri? Meklēt, kas ēd ramu, palielināt ramu un max heap size vai likt jaudīgāku proci, jo šis pie kārtīgām GC darbībām iet uz 100%. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.