ΠΊΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ out of memory chrome
ΠΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ out of memory Π±ΡΠ°ΡΠ·Π΅Ρ chrome
11 Π»ΡΡΡΠΈΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ Google Chrome ΠΈΠ·-Π·Π° Π½Π΅Ρ Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ Π² Windows 10
Google Chrome ΠΌΠΎΠΆΠ΅Ρ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΌΠΎΠΈΠΌΠΈ ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π°ΠΌΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΠΈΡΡ, Π½ΠΎ ΠΎΠ½ ΠΏΠΎΡΠΌΠ΅ΡΡΠ½ΠΎ ΠΏΠ΅ΡΠ°Π»ΡΠ½ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅Ρ ΡΠ΅ΡΡΡΡΡ. ΠΡΠ΄ΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ Π΅Π³ΠΎ Π½Π° ΡΡΠ°ΡΠΎΠΌ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ, ΡΠ°ΡΡΠΎ Π·Π°ΡΠ²Π»ΡΡΡ, ΡΡΠΎ ΠΎΠ½ ΡΠΎΡΠΌΠΎΠ·ΠΈΡ, Π° ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΡΠ΄Π°Π΅Ρ ΠΊΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Chrome ΡΠΎΠΎΠ±ΡΠ°ΡΡ ΠΎ ΠΎΡΠΈΠ±ΠΊΠ° βΠ½Π΅Ρ Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈβ ΠΏΡΠΈ Π½Π΅Π΄Π°Π²Π½Π΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°.
ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π΅ΡΡΡ Π΄Π²Π° ΠΊΠΎΠ΄Π° ΠΎΡΠΈΠ±ΠΎΠΊ, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°. ΠΠ΄ΠΈΠ½ Π³ΠΎΠ²ΠΎΡΠΈΡ: Β«ΠΠΉ, Ρ Π²Π°ΡΠΊΠ°! Π§ΡΠΎ-ΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ ΠΏΡΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ ΡΡΠΎΠΉ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ: ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ°ΠΌΡΡΠΈ. Π Π΄ΡΡΠ³ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΠ΅, Π³ΠΎΠ²ΠΎΡΠΈΡ: Β«ΠΠΉ, ΡΠ΅Π»ΡΠΎΠΊ! Π Google Chrome Π½Π΅ Ρ Π²Π°ΡΠΈΠ»ΠΎ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΡΡ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ Β».
ΠΠ±Π° ΠΊΠΎΠ΄Π° ΠΎΡΠΈΠ±ΠΊΠΈ ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅. ΠΡΠΎΠΌΡ Π±ΡΠ°ΡΠ·Π΅ΡΡ Chrome Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΡΡΠΎΠ² Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΡΠΊΡΡΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΡΠΈΠ½, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½ΠΈΠΆΠ΅ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ.
1. ΠΠ°ΠΊΡΠΎΠΉΡΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ.
ΠΡΠΊΡΡΡΠΈΠ΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π² Chrome ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅. ΠΡΠΎΠ²Π΅ΡΡΡΠ΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ Π·Π°ΠΊΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Ρ. ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ Π½ΠΎΠ²ΡΡ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ.
Π’Π°ΠΊΠΆΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠΊΠΎΠ½ Chrome Π΄Π»Ρ ΠΎΡΠΊΡΡΡΠΈΡ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΡΠΊΡΡΠ²Π°ΡΡ 10 Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΡΡΠ²Π°ΡΡ 4-5 Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π² ΠΎΠ΄Π½ΠΎΠΌ, Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ β Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΎΠΊΠ½Π΅ Chrome. ΠΠΎΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΏΡΠ°Π²Π»ΡΠΉΡΠ΅ ΠΎΡΠΊΡΡΡΡΠΌΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ, ΡΡΠΎΠ±Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ.
2. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ΅ΠΆΠΈΠΌ ΠΈΠ½ΠΊΠΎΠ³Π½ΠΈΡΠΎ.
ΠΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ ΠΈΠ½ΠΊΠΎΠ³Π½ΠΈΡΠΎ (Π½Π°ΠΆΠΌΠΈΡΠ΅ Ctrl + Shift + N, ΡΡΠΎΠ±Ρ ΠΎΡΠΊΡΡΡΡ), ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ Π²ΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ½ΠΎΠ³Π΄Π° ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ.
ΠΡΠΊΡΠΎΠΉΡΠ΅ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠ΄Π°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΡ Β«Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ°ΠΌΡΡΠΈΒ», ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π»ΠΈ ΠΎΠ½Π° Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ½ΠΊΠΎΠ³Π½ΠΈΡΠΎ. ΠΡΠ»ΠΈ Π΄Π°, ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΠΈΠ½ΠΎΠ²Π°ΡΠΎ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ. ΠΡΠΊΠ»ΡΡΠΈΡΠ΅ Π²ΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΈΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ· Π½ΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π¨Π°Π³ 1: ΠΡΠΊΡΠΎΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΡ Chrome ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π½ΠΈΠΆΠ΅ Π°Π΄ΡΠ΅ΡΡ.
Π¨Π°Π³ 2: ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π½Π° ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ, ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ / ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅, ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Β«Π£Π΄Π°Π»ΠΈΡΡΒ», ΡΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Chrome.
3. ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅ Chrome.
ΠΠ΅ΡΠ΅Π΄ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠΎΠΌ Chrome Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²ΡΡ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠΎΡΠ΅ΡΡΡΡ Π΅Π΅. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π·Π°ΠΊΡΠΎΠΉΡΠ΅ Π²ΡΠ΅ ΠΎΡΠΊΡΡΡΡΠ΅ ΠΎΠΊΠ½Π° Chrome Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ, ΠΏΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Chrome.
4. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ
ΠΡ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΡΡΠ°ΡΠΎΠ΅ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ΅ΡΠΊΡ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ Ρ ΠΏΠ°ΠΌΡΡΡΡ Π² Chrome, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΡΡΠ΅ ΠΌΡ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Chrome, Π½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π±ΡΡΡΡΠΎ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡ / Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΈΡ , Π½Π΅ Π²ΠΌΠ΅ΡΠΈΠ²Π°ΡΡΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ°.
ΠΠΎ ΠΈΡΠΎΠ½ΠΈΠΈ ΡΡΠ΄ΡΠ±Ρ, ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ, Π½ΠΎ ΡΡΠΎ ΠΎΠ±Π»Π΅Π³ΡΠΈΡ Π²Π°ΠΌ ΠΆΠΈΠ·Π½Ρ.
5. ΠΡΠΈΡΡΠΈΡΠ΅ ΠΊΠ΅Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΈ ΡΠ°ΠΉΠ»Ρ cookie.
ΠΡΠΈΡΡΠΊΠ° ΠΊΠ΅ΡΠ° Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² cookie ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ ΡΠ»ΡΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΈ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΎΡΠΈΠ±ΠΊΠ° Β«Π½Π΅Ρ Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈΒ», Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΊΡΡΡΡΠΉ ΡΡΡΠΊ Π΄Π»Ρ ΠΎΡΠΈΡΡΠΊΠΈ ΠΊΠ΅ΡΠ° ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² cookie Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ Π±ΡΠ°ΡΠ·Π΅ΡΠ΅, ΠΈΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ°ΠΉΡΠΎΠ² Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ°. ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅ ΠΎΡΠΊΡΡΡΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΈ ΠΏΠΎΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΎΡΠΈΡΠ°ΡΡ ΠΊΠ΅Ρ ΠΈ ΡΠ°ΠΉΠ»Ρ cookie, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΠΏΠΎΡΠΎΠΌ.
6. ΠΡΠΈΡΡΠΈΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ
ΠΡΡ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ² ΠΈ ΡΠ°ΠΉΠ»Ρ cookie ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π±ΡΡΡΡΠΎ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΡΡ. Π Chrome ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Ρ Windows, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΌΠΎΠ³ΡΡ Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°ΡΡΡΡ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΠ. ΠΡ ΡΠ΄Π°Π»ΡΠ΅ΡΠ΅ ΡΡΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΡΡΠΎΠ±Ρ Chrome ΠΏΠΎΠ»ΡΡΠΈΠ» Π½ΠΎΠ²ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΠ» Π»ΡΠ±ΡΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡΡΡΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ.
Windows 10 ΠΈΠΌΠ΅Π΅Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΎΠΏΡΠΈΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠ° Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΈΡΡΠΈΡΡ Π΅Π³ΠΎ Π΄Π»Ρ Π΄ΠΈΡΠΊΠ°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ Chrome. Π‘ΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ Π΄ΠΈΡΠΊ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π΄ΠΈΡΠΊ C. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡΠΎΠ½Π½Π΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅.
7. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΎΡΠΈΡΡΠΊΠΈ Chrome.
Google Π²ΡΠΏΡΡΡΠΈΠ» ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠΎΠΌ Chrome. ΠΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ, ΠΈ Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ ΡΡΡΠ»ΠΊΡ, ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΠΈΡΡ Π½ΠΈΠΆΠ΅. Google ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΡΠΈΠ»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΠΏΠ°ΠΌΡΡΡΡ ΠΈ ΡΠ±ΠΎΡΠΌΠΈ ΡΡΡΠ°Π½ΠΈΡΡ.
8. ΠΡΠΊΠ»ΡΡΠΈΡΠ΅ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅.
Π¨Π°Π³ 1: ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Β«ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈΒ»> Β«ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΒ»> Β«Π‘ΠΈΡΡΠ΅ΠΌΠ°Β» ΠΈΠ»ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΏΡΡΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π½ΠΈΠΆΠ΅, Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅.
Π¨Π°Π³ 2: ΠΡΠΊΠ»ΡΡΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Β«ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΒ».
ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π·, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ ΠΎΡΠΊΡΡΡΡ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ΄ ΠΎΡΠΈΠ±ΠΊΠΈ Β«Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ°ΠΌΡΡΠΈΒ».
9. ΠΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΎΡΠΈΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Chrome ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠ°ΠΌΡΡΡΡ. Π¨Π°Π³ΠΈ ΠΏΡΠΎΡΡΡ ΠΈ Π½Π΅ Π·Π°ΠΉΠΌΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΈΠ½ΡΡ.
10. ΠΠ΅ΡΠ΅ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Chrome.
ΠΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ. ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Windows, ΠΎΡΡΠ°ΡΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΡΠ΅Π΅ΡΡΡΠ° ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ. ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΡΠΈΡΡΡΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Revo Uninstaller, Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Windows, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΎΡΡΠ°Π²ΡΠΈΡ ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ Π²Π΅ΡΡΠΈΡ Chrome, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π½ΠΈΠΆΠ΅ Π°Π΄ΡΠ΅ΡΡ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²Ρ Π³ΠΎΡΠΎΠ²Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ Chrome.
11. Π£Π²Π΅Π»ΠΈΡΡΡΠ΅ Π»ΠΈΠΌΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΡΠΎ Π΄Π»Ρ ΠΎΠΏΡΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΈ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Ρ ΠΈΠ· Π²Π°Ρ Π½Π΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΡΠΈΠ±Π΅Π³Π°ΡΡ ΠΊ ΡΡΠΎΠΌΡ. Google ΠΈΠΌΠ΅Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠ΅Π΄Π΅Π» ΠΏΠ°ΠΌΡΡΠΈ 512 ΠΠ Π΄Π»Ρ 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΠΈ 1,4 ΠΠ Π΄Π»Ρ 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ββmax_old_space_sizeβ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΡΠΎΡ ΠΏΡΠ΅Π΄Π΅Π» ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠΎΠ·ΠΆΠ΅ Π΄ΠΎ 1 ΠΠ Π΄Π»Ρ 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΠΈ 4 ΠΠ Π΄Π»Ρ 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΈ ΠΏΡΠ΅Π΄Π΅Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄Π»Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ, Π° Π½Π΅ Π΄Π»Ρ ΠΎΠΊΠΎΠ½.
ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡΠ΅Π³ΠΎΡΡ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠΎ ΡΠ½ΡΡΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π² 4 ΠΠ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. ΠΡΠΈΡΠΈΠ½Π° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ Π»ΠΈΠΌΠΈΡΠ° Π·Π°ΡΡΠΎΠ½Π΅Ρ Π»ΠΈΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ Π½Π°Π·Π°Π΄ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΡΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ, Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ ΠΏΠΎ-Π΄ΡΡΠ³ΠΎΠΌΡ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΌΠ΅ΡΠΈΠ»ΠΈ, ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π΄ΠΎ 4 ΠΠ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΡ, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ Π·Π°ΡΠΈΡΠ°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ΅ΠΉΡΠ°Ρ Π²ΡΠ΅ ΠΏΠΎ-Π΄ΡΡΠ³ΠΎΠΌΡ, ΠΈ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Chrome, ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ»ΠΈ Π΄ΠΎΠ»Π³ΠΈΠΉ ΠΏΡΡΡ. ΠΡΠ΄Π΅ΠΌ Π½Π°Π΄Π΅ΡΡΡΡΡ, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Google Chrome ΡΠ²Π΅Π»ΠΈΡΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ±ΠΎΡΠΊΠ°Ρ .
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ Π»ΠΈΠΌΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ β ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π°Π΄ΡΠ΅Ρ ΡΡΡΠ»ΠΊΠΈ Chrome Ρ:
ΠΠΏΡΡΡ ΠΆΠ΅, Π·Π΄Π΅ΡΡ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ ΡΠ°Π·Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ, ΠΠΠ£, ΠΠ‘ ΠΈ Ρ. Π., Π§ΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠ½ΠΈΠ· ΠΏΠΎ ΠΏΠ΅ΡΠ΅ΡΠ»ΠΊΡ ΠΏΠ°ΠΌΡΡΠΈ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΎΡΠΈΠ±ΠΊΡ Β«Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ°ΠΌΡΡΠΈΒ» Π² Chrome, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠΊΡΡΡΠΎ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΈΠ»ΠΈ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. Π£ΠΏΠΎΠΌΡΠ½ΡΡΡΠ΅ Π²ΡΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΈ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΠΏΡΠΎΡΠΌΠΎΡΡΡ Π»ΡΠ±ΠΈΠΌΡΡ ΡΠ°ΠΉΡΠΎΠ² Π² ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠ΅ ΡΡΠΎΠΊΠΈ.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ:
Firefox Π²ΡΡ
ΠΎΠ΄ΠΈΡ Π½Π° Π΄ΠΎΠΌΠΈΠ½ΠΈΡΡΡΡΠΈΠΉ ΡΡΠ½ΠΎΠΊ Π±ΡΠ°ΡΠ·Π΅ΡΠΎΠ² Chrome Ρ Quantum. Π‘ΡΠΎΠΈΡ Π»ΠΈ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ Ρ Chrome Π½Π° Firefox? ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΠΎ.
Fix: Google Chrome Ran Out Of Memory
Almost all of us use the internet on daily basis. And when it comes to internet browsing, Google Chrome is one of the top choice of users. But, even though Google Chrome is highly preferred by the users, you still might face some issues while using it. One of the issues that many people face while using Google Chrome is the βAw Snap! Chrome ran out of memoryβ issue.
This issue is exactly what the error message tells you. Your Google Chrome runs out of memory. This is a problem because you will see this message despite having more than enough memory (RAM) on your computer. A lot of Chrome users face this issue out of nowhere. There are no warnings before this issue and there arenβt any specific hints that can help you predict the problem before happening. You might see this error on specific pages or it might be completely random. The error isnβt related to a specific website. This issue, if keeps happening, wonβt let you browse normally and will keep showing this page on either random or specific websites.
The cause of issue is not clear. There are many reasons why this might be happening but it is clear that itβs a problem on the Google Chrome end, not on the websiteβs end. The issue might be caused by some extension or it might be because of a corrupted user profile or it might be because of the wrong Chrome version. Since there can be many reasons of this message, there are multiple solutions of this problem.
So, try to go through troubleshooting and if that doesnβt solve the problem then try each method listed below until the issue is resolved.
Troubleshooting
Method 1: Update to 64-bit
The first thing you should check is whether you have the 64 bit version of Google Chrome or not. This should be your priority especially if you think you have more than enough RAM for Google Chrome. The 64 bit version of Google Chrome is designed to use more memory so if your Chrome is giving this memory error even though you have a lot of memory available then this might be the issue.
If you arenβt sure whether you have a 32 bit or a 64 bit version then follow the steps given below
Once you are done, check whether the problem is still there or not.
Method 2: Using Task Manager
Sometimes killing the Google Chrome from the task manager and then restarting it solves the issue as well. This isnβt a permanent solution but more of a hack which you might have to do over and over. But if nothing else is working then this should come in handy.
These steps are to be performed while your Google Chrome is working and is showing the error.
Once it is closed, re-run the Google Chrome and you shouldnβt see the memory issue page anymore.
Method 3: Clear Cache
Clearing the cache of the browser might be a good option. It will solve the problem if there are any corrupted information stored in there that might be causing this issue.
To clear the cache of the browser, follow the steps given below
Now check whether the issue is gone or not.
Method 4: Disable Extensions
The problem might be caused by an extension as well. You can check whether the problem is because of an extension or not by disabling all the extensions. Once you disable all the extensions check whether the problem is still there. If the problem is gone then that means the problem was because of an extension. You can enable one extension at a time to check which one was causing the issue and then reinstall it.
To disable extensions on your Google Chrome, follow the steps given below
If the problem is gone then enable an extension by checking the Enabled box in front of it. Repeat this for all the extensions and once you find the extension that is causing the issue, delete it by clicking the dustbin box in front of it.
Method 5: Creating New User Profile
If the problem is caused by the information stored by the Google Chrome then changing the name of the default folder of Google Chrome might solve the issue for you. This can happen if your user profile is corrupted.
Follow the steps given below to change the name of your user profile folder
Now start Google Chrome again and check whether the issue still persists or not. Donβt worry about the folder, once you start Chrome again, it will recreate a new Default folder for you automatically.
ΠΠ°ΠΊ Π±ΠΎΡΠΎΡΡΡΡ Ρ OutOfMemoryError Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅, ΠΈΠ»ΠΈ ΠΎΡ ΡΠΆ ΠΌΠ½Π΅ ΡΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΡΠ΅Π΄ΡΡΡΠΎΡΠΈΡ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ OOM. ΠΠΎΠΌΡ-ΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΅ΡΡ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ.
ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ ΡΠ΅Π±Π΅, ΡΡΠΎ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π²Π΅ΡΡ
Π½ΠΈΠΉ ΠΏΡΠ΅Π΄Π΅Π» Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²ΠΊΠΈ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΡΡΡ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π³ΠΈΠ³Π°Π±Π°ΠΉΡ ΠΠΠ£.
Π‘Π°ΠΌΠΎ ΠΏΠΎ ΡΠ΅Π±Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ OOM Π² ΠΊΠ°ΠΊΠΎΠΌ-ΡΠΎ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠΎΠ² Π΅ΡΡ Π½Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ ΠΏΠΎΡΠΎΠΊ Β«Π²ΡΠΆΡΠ°Π»Β» Π²ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ ΠΏΠ°ΠΌΡΡΡ, Π΄Π° ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎΡ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ²ΡΠ» ΠΊ OOM, Π²ΠΈΠ½ΠΎΠ²Π°Ρ Π² ΡΡΠΎΠΌ.
ΠΠΏΠΎΠ»Π½Π΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π° ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΏΠΎΡΠΎΠΊ ΡΠ΅ΠΌ-ΡΠΎ Π·Π°Π½ΠΈΠΌΠ°Π»ΡΡ, ΠΏΠΎΠ΅Π΄Π°Ρ ΠΏΠ°ΠΌΡΡΡ, Β«Π΄ΠΎΠ·Π°Π½ΠΈΠΌΠ°Π»ΡΡΒ» ΡΡΠΈΠΌ Π΄ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Β«Π΅ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, ΠΈ Ρ Π»ΠΎΠΏΠ½ΡΒ», ΠΈ Π·Π°Π²Π΅ΡΡΠΈΠ» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ²ΡΠΈΡΡ. Π Π² ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠΎΡΠΎΠΊ ΡΠ΅ΡΠΈΠ» Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π΄Π»Ρ ΡΠ²ΠΎΠ΅ΠΉ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π΅ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ±ΠΎΡΡΠΈΠΊ ΠΌΡΡΠΎΡΠ° ΠΏΠΎΠΏΡΠΆΡΠ»ΡΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π½ΠΎ ΠΌΡΡΠΎΡΠ° ΡΠΆΠ΅ Π² ΠΏΠ°ΠΌΡΡΠΈ Π½Π΅ Π½Π°ΡΡΠ». Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΊΠ°ΠΊ ΡΠ°Π· ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ OOM, Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΡΡΠ΅ΠΊΡΡΠ΅ΠΉΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΡΠΎΠ³ΠΎ Π²ΠΈΠ½ΠΎΠ²Π½ΠΈΠΊΠ° ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ. ΠΠΊΠΎΠ»ΠΎ Π½Π΅Π΄Π΅Π»ΠΈ Ρ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π», ΠΊΠ°ΠΊ ΡΠ»ΡΡΡΠΈΡΡ ΠΆΠΈΠ·Π½Ρ ΠΏΠ°ΡΠΎΡΠΊΠΈ Π½Π°ΡΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΈ ΡΠ΅Π±Ρ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ Π²Π΅ΡΡΠΈ. Π Π΅ΡΡ Π½Π΅Π΄Π΅Π»ΡΠΊΡ-Π΄Π²Π΅ ΠΏΠΎΡΡΠ°ΡΠΈΠ» Π½Π° ΡΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΈΡ
Π² ΠΏΠΎΡΡΠ΄ΠΎΠΊ. Π ΠΎΠ±ΡΠ΅ΠΉ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠ°ΡΠ° Π½Π΅Π΄Π΅Π»Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΡΡΠ½ΡΠ»ΠΈΡΡ Π½Π° ΠΏΠΎΠ»ΡΠΎΡΠ° ΠΌΠ΅ΡΡΡΠ°, Π²Π΅Π΄Ρ Π·Π°Π½ΠΈΠΌΠ°Π»ΡΡ Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΈΠΌΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ.
ΠΠ· Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ: ΡΡΠΎΡΠΎΠ½Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΡΡΡΡΠ½Π½ΡΠ΅ Π²Π΅ΡΠΈ Π² Π²ΡΠ·ΠΎΠ²Π°Ρ
Ρ
ΡΠ°Π½ΠΈΠΌΡΡ
ΠΏΡΠΎΡΠ΅Π΄ΡΡ.
Π ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠΈΠΌΠΏΡΠΎΠΌΡ Π±ΡΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅: Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° ΡΠ΅ΡΠ²ΠΈΡ, ΠΎΠ½ΠΎ ΠΌΠΎΠ³Π»ΠΎ ΡΠΏΠ°ΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΡΡΠΊΠΈ, Π° ΠΌΠΎΠ³Π»ΠΎ ΡΠ΅ΡΠ΅Π· Π΄Π²ΠΎΠ΅. ΠΡΠ»ΠΈ ΠΏΠΎΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠΎ Π±ΡΠ»ΠΎ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π½Π°Π±ΠΈΡΠ°Π»ΠΎ Β«ΡΠ°Π·ΠΌΠ΅ΡΒ», ΠΈ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ Π»ΠΎΠΆΠΈΠ»ΠΎΡΡ.
Π‘ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π΅Π΅. ΠΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²Π΅ΡΡΠΈ ΡΠ΅Π±Ρ Ρ
ΠΎΡΠΎΡΠΎ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΡΠΎΠΊ, Π° ΠΌΠΎΠ³Π»ΠΎ ΠΏΠ΅ΡΠ΅ΡΡΠ°ΡΡ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΠΌΠΈΠ½ΡΡ ΡΠ΅ΡΠ΅Π· 10 ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΈΠ»ΠΈ Π²Π΄ΡΡΠ³ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ ΡΠΏΠ°ΡΡΡ, ΡΠΎΠΆΡΠ°Π² Π²ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ ΠΏΠ°ΠΌΡΡΡ (ΡΡΠΎ Ρ ΡΠΆΠ΅ ΡΠ΅ΠΉΡΠ°Ρ Π²ΠΈΠΆΡ, Π½Π°Π±Π»ΡΠ΄Π°Ρ Π·Π° Π½ΠΈΠΌ). Π ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π±ΡΠ»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° ΠΈ Π²Π΅ΡΡΠΈΡ Tomcat Ρ 7ΠΉ Π΄ΠΎ 8ΠΉ, ΠΈ JRE, ΠΎΠ½ΠΎ Π²Π΄ΡΡΠ³ Π² ΠΎΠ΄Π½Ρ ΠΈΠ· ΠΏΡΡΠ½ΠΈΡ (ΠΏΡΠΎΡΠ°Π±ΠΎΡΠ°Π² Π²ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ Π½ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΈ ΠΌΠ°Π»ΠΎ β 2 Π½Π΅Π΄Π΅Π»ΠΈ) Π½Π°ΡΠ°Π»ΠΎ ΡΠ²ΠΎΡΠΈΡΡ ΡΠ°ΠΊΠΈΠ΅ Π²Π΅ΡΠΈ, ΡΡΠΎ ΡΡΡΠ΄Π½ΠΎ ΠΏΡΠΈΠ·Π½Π°Π²Π°ΡΡΡΡ Π² ΡΡΠΎΠΌ. π
Π ΠΎΠ±ΠΎΠΈΡ
ΠΈΡΡΠΎΡΠΈΡΡ
ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Ρ ΠΎΠΊΠ°Π·Π°Π»ΠΈΡΡ Π΄Π°ΠΌΠΏΡ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΈΠΌ ΡΠ΄Π°Π»ΠΎΡΡ ΠΎΡΡΡΠΊΠ°ΡΡ Π²ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ΄ΡΡΠΆΠΈΠ²ΡΠΈΡΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ JVisualVM (Π±ΡΠ΄Ρ Π½Π°Π·ΡΠ²Π°ΡΡ Π΅Π³ΠΎ JVVM), Eclipse Memory Analyzing Tool (MAT) ΠΈ ΡΠ·ΡΠΊΠΎΠΌ OQL (ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Ρ Π½Π΅ ΡΠΌΠ΅Ρ Π΅Π³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π³ΠΎΡΠΎΠ²ΠΈΡΡ Π² MAT, Π½ΠΎ ΠΌΠ½Π΅ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ Π»Π΅Π³ΡΠ΅ ΠΏΠΎΠ΄ΡΡΠΆΠΈΡΡΡΡ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ OQL ΠΈΠΌΠ΅Π½Π½ΠΎ Π² JVVM).
ΠΡΡ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π±ΡΠ»ΠΎ ΠΊΡΠ΄Π° Π·Π°Π³ΡΡΠΆΠ°ΡΡ Π΄Π°ΠΌΠΏΡ. ΠΡ ΠΎΠ±ΡΡΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΎΠΈΠ·ΠΌΠ΅ΡΠΈΠΌ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ Π΄Π°ΠΌΠΏΠ°.
ΠΠ°ΡΠ°Π»ΠΎ
ΠΡΠ°ΠΊ, Π½Π°ΡΠ½Ρ ΠΏΠΎΡΠΈΡ
ΠΎΠ½ΡΠΊΡ ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡ ΠΊΠ°ΡΡΡ, ΠΈ Π½Π°ΡΠ½Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ JVVM.
ΠΡΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π² ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ Ρ jstatd ΠΈ jmx ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ Π·Π° ΠΆΠΈΠ·Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅: Heap, ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, PermGen, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΡΠΎΠΊΠΎΠ² ΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.
Π’Π°ΠΊΠΆΠ΅ JVVM ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌ, ΠΈ Ρ Π½Π΅ ΠΏΡΠ΅ΠΌΠΈΠ½ΡΠ» Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ ΠΊΡΠ΄Π° Π±ΠΎΠ»ΡΡΠ΅ Π²Π΅ΡΠ΅ΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΠΈΡΡ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²Π°ΡΡ Ρ MBean’Π°ΠΌΠΈ, Π½Π°Π±Π»ΡΠ΄Π°ΡΡ Π·Π° Π΄Π΅ΡΠ°Π»ΡΠΌΠΈ Ρ
ΠΈΠΏΠ°, Π²Π΅ΡΡΠΈ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π·Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π΄Π΅ΡΠΆΠ° Π² Β«Π³ΠΎΠ»ΠΎΠ²Π΅Β» ΠΊΡΠ΄Π° Π±ΠΎΠ»ΡΡΠΈΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΌΠ΅ΡΡΠΈΠΊ, ΡΠ΅ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ Monitor ΡΠ°Ρ.
ΠΠΎΡ ΡΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½Π°Π±ΠΎΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ
ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ².
Visual GC (VGC) ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΠΈΠ΄Π΅ΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Ρ
ΠΈΠΏΠΎΠΌ.
ΠΠΎΡ Π΄Π²Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠΈ VGC, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΠΊΠ°ΠΊ Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ Π΄Π²Π° ΡΠ°Π·Π½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π‘Π»Π΅Π²Π° ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ Ρ
ΠΈΠΏΠ°, ΠΊΠ°ΠΊ Perm Gen, Old Gen, Survivor 0, Survivor 1, ΠΈ Eden Space.
ΠΡΠ΅ ΡΡΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠ΅ β ΡΡΠ°ΡΡΠΊΠΈ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²ΠΊΠ΅, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΈ ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
PermGen β Permanent Generation β ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ Π² JVM, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² Java ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
.
Old Gen β ΡΡΠΎ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΠ°ΡΡΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΆΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»Π°Π΄ΡΠ²Π°Π½ΠΈΠΉ Ρ ΠΌΠ΅ΡΡΠ° Π½Π° ΠΌΠ΅ΡΡΠΎ Π² Survivor-ΠΎΠ±Π»Π°ΡΡΡΡ
, ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π»ΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² ΠΎΠ±Π»Π°ΡΡΡ Β«ΡΡΠ°ΡΡΡ
Β» ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
Survivor 0 ΠΈ 1 β ΡΡΠΎ ΠΎΠ±Π»Π°ΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π² Eden Space ΠΏΠ΅ΡΠ΅ΠΆΠΈΠ»ΠΈ Π΅Π³ΠΎ ΡΠΈΡΡΠΊΡ, ΡΠΎ Π΅ΡΡΡ Π½Π΅ ΡΡΠ°Π»ΠΈ ΠΌΡΡΠΎΡΠΎΠΌ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° Eden Space Π½Π°ΡΠ°Π» ΡΠΈΡΡΠΈΡΡΡΡ Garbage Collector’ΠΎΠΌ (GC). ΠΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠΈΡΡΠΊΠΈ Eden Space ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ· Π°ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π² ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Survivor’Π° ΠΏΠ΅ΡΠ΅ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ Π² ΠΏΠ°ΡΡΠΈΠ²Π½ΡΠΉ, ΠΏΠ»ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π½ΠΎΠ²ΡΠ΅, ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Survivor’Ρ ΠΌΠ΅Π½ΡΡΡΡΡ ΡΡΠ°ΡΡΡΠ°ΠΌΠΈ, ΠΏΠ°ΡΡΠΈΠ²Π½ΡΠΉ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π°ΠΊΡΠΈΠ²Π½ΡΠΌ, Π° Π°ΠΊΡΠΈΠ²Π½ΡΠΉ β ΠΏΠ°ΡΡΠΈΠ²Π½ΡΠΌ.
Eden Space β ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π½ΠΎΠ²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΏΠΎΡΠΎΠΆΠ΄Π°ΡΡΡΡ. ΠΡΠΈ Π½Π΅Ρ
Π²Π°ΡΠΊΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΡΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠΈΠΊΠ» GC.
ΠΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ ΠΊΠΎ Π²ΡΠΎΡΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ:
Π Π½ΡΠΌ Eden Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΠΌΠ½Π΅ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ· Mortal Kombat, Π°ΡΠ΅Π½Ρ Ρ ΡΠΈΠΏΠ°ΠΌΠΈ. ΠΡΠ»Π° ΡΠ°ΠΊΠ°Ρ, ΠΊΠ°ΠΆΠ΅ΡΡΡβ¦ Π ΠΡΠ°ΡΠΈΠΊ GC β ΡΠΈΠΏΡ ΠΈΠ· NFS Hot Pursuit, Π²ΠΎΡ ΡΠ΅ Π²ΠΎΡ, ΠΏΠ»ΠΎΡΠΊΠΈΠ΅ Π΅ΡΡ.
Π§ΠΈΡΠ»Π° ΡΠΏΡΠ°Π²Π° ΠΎΡ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ:
1) ΡΡΠΎ Eden ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π² 50 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ, ΠΈ ΡΠΎ, ΡΡΠΎ Π½Π°ΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ Π³ΡΠ°ΡΠΈΠΊΠ°, ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΈΠ· Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ β Π·Π°Π½ΡΡΠΎ 25 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ. ΠΡΠ΅Π³ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠΎΡΡΠΈ Π΄ΠΎ 546 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ.
2) ΡΡΠΎ Old ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠΎΡΡΠΈ Π΄ΠΎ 1,333 Π³ΠΈΠ³Π°, ΡΠ΅ΠΉΡΠ°Ρ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 405 ΠΠ, ΠΈ Π·Π°Π±ΠΈΡ Π½Π° 145,5 ΠΠ.
Π’Π°ΠΊ ΠΆΠ΅ Π΄Π»Ρ Survivor-ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ ΠΈ Perm Gen.
ΠΠ»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ β Π²ΠΎΡ ΠΠ°ΠΌ Tracer-Π³ΡΠ°ΡΠΈΠΊ Π·Π° 75 ΡΠ°ΡΠΎΠ² ΡΠ°Π±ΠΎΡΡ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΄ΡΠΌΠ°Ρ, ΠΊΠΎΠ΅-ΠΊΠ°ΠΊΠΈΠ΅ Π²ΡΠ²ΠΎΠ΄Ρ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· Π½Π΅Π³ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ Π°ΠΊΡΠΈΠ²Π½Π°Ρ ΡΠ°Π·Π° Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ β Ρ 8:30 Π΄ΠΎ 17:30 Π² ΡΠ°Π±ΠΎΡΠΈΠ΅ Π΄Π½ΠΈ, ΠΈ ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π½Π° Π²ΡΡ
ΠΎΠ΄Π½ΡΡ
ΠΎΠ½ΠΎ ΡΠΎΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ π
ΠΡΠ»ΠΈ Π²Ρ Π²Π΄ΡΡΠ³ ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ Π² ΡΠ²ΠΎΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΡΡΠΎ Old-ΠΎΠ±Π»Π°ΡΡΡ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π° β ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½ΠΈΡΡΡ, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ ΠΎΠ½Π° Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π° ΡΠΆΠ΅ ΠΌΡΡΠΎΡΠΎΠΌ.
ΠΡΡΠΎΡ β ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅Ρ Π°ΠΊΡΠΈΠ²Π½ΡΡ ΡΡΡΠ»ΠΎΠΊ ΠΈΠ· Π΄ΡΡΠ³ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΈΠ»ΠΈ ΡΠ΅Π»ΡΠ΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΡ ΡΠ°ΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ Β«ΠΎΠ±Π»Π°ΠΊΠΎΒ» Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΎΡΠ΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΠΌΡΡΠΎΡΠΎΠΌ, Π΅ΡΠ»ΠΈ Π½Π°Π±ΠΎΡ ΡΡΡΠ»ΠΎΠΊ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ Π²Π½ΡΡΡΠΈ ΡΡΠΎΠ³ΠΎ Β«ΠΎΠ±Π»Π°ΠΊΠ°Β», ΠΈ Π½ΠΈ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡΠ΅ΠΊΡ Π² ΡΡΠΎΠΌ Β«ΠΎΠ±Π»Π°ΠΊΠ΅Β» Π½ΠΈΡΡΠΎ Π½Π΅ ΡΡΡΠ»Π°Π΅ΡΡΡ Β«ΡΠ½Π°ΡΡΠΆΠΈΒ»).
ΠΡΠΎ Π±ΡΠ» ΠΊΡΠ°ΡΠΊΠΈΠΉ ΠΏΠ΅ΡΠ΅ΡΠΊΠ°Π· ΡΠΎΠ³ΠΎ, ΡΡΠΎ Ρ ΡΠ·Π½Π°Π» ΠΏΡΠΎ ΡΡΡΡΠΊΡΡΡΡ Ρ ΠΈΠΏΠ° Π·Π° Π²ΡΠ΅ΠΌΡ, ΠΏΠΎΠΊΠ° Π³ΡΠ³Π»ΠΈΠ».
ΠΡΠ΅Π΄ΠΏΠΎΡΡΠ»ΠΊΠΈ
ΠΡΠ°ΠΊ, ΡΠ»ΡΡΠΈΠ»ΠΎΡΡ ΡΡΠ°Π·Ρ Π΄Π²Π΅ Π²Π΅ΡΠΈ:
1) ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ/ΡΠΎΠΌΠΊΠ΅ΡΡ/Π΄ΠΆΠ°Π²Ρ Π² ΠΎΠ΄Π½Ρ ΠΈΠ· ΠΏΡΡΠ½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ ΡΠΆΠ΅ Π΄ΠΎΠ»Π³ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²Π΅Π΄Ρ, Π²Π΄ΡΡΠ³ ΡΡΠ°Π»ΠΎ Π²Π΅ΡΡΠΈ ΡΠ΅Π±Ρ ΠΈΠ· ΡΡΠΊ Π²ΠΎΠ½ ΠΏΠ»ΠΎΡ
ΠΎ ΡΠΏΡΡΡΡ Π΄Π²Π΅ Π½Π΅Π΄Π΅Π»ΠΈ ΠΏΠΎΡΠ»Π΅ Π²ΡΡΡΠ°Π²Π»Π΅Π½ΠΈΡ.
2) ΠΌΠ½Π΅ Π½Π° ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ ΠΎΡΠ΄Π°Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠΆΠ΅ Π²ΡΠ» ΡΠ΅Π±Ρ Π΄ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π΅ ΠΎΡΠ΅Π½Ρ Ρ
ΠΎΡΠΎΡΠΎ.
Π― ΡΠΆΠ΅ Π½Π΅ ΠΏΠΎΠΌΠ½Ρ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΡΠΎΡΠ½ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΈ ΡΡΠΈ ΡΠΎΠ±ΡΡΠΈΡ, Π½ΠΎ ΠΏΠΎΡΠ»Π΅ Β«ΡΡΡΠ½ΠΎΠΉ ΠΏΡΡΠ½ΠΈΡΡΒ» Ρ ΡΠ΅ΡΠΈΠ» Π½Π°ΠΊΠΎΠ½Π΅Ρ-ΡΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ Π΄Π°ΠΌΠΏΠ°ΠΌΠΈ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π΅ΡΠ°Π»ΡΠ½Π΅Π΅, ΡΡΠΎΠ±Ρ ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ Π±ΡΠ»ΠΎ Π΄Π»Ρ ΠΌΠ΅Π½Ρ ΡΡΡΠ½ΡΠΌ ΡΡΠΈΠΊΠΎΠΌ. ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°Ρ, ΡΡΠΎ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π΄Π΅ΡΠ°Π»ΠΈ Ρ ΠΌΠΎΠ³ ΡΠΆΠ΅ Π·Π°ΠΏΠ°ΠΌΡΡΠΎΠ²Π°ΡΡ.
ΠΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΌΡ ΡΠ»ΡΡΠ°Ρ ΡΠΈΠΌΠΏΡΠΎΠΌΡ Π±ΡΠ»ΠΈ ΡΠ°ΠΊΠΈΠ΅: Π²ΡΠ΅ ΠΏΠΎΡΠΎΠΊΠΈ, ΠΎΡΠ²Π΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π²ΡΠΆΡΠ°Π½Ρ, Π½Π° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΎΡΠΊΡΡΡΠΎ Π²ΡΠ΅Π³ΠΎ 11 ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, ΠΈ ΡΠ΅ Π½Π΅ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ, Π±Π°Π·Π° Π³ΠΎΠ²ΠΎΡΠΈΠ»Π°, ΡΡΠΎ ΠΎΠ½ΠΈ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ recv sleep, ΡΠΎ Π΅ΡΡΡ ΠΎΠΆΠΈΠ΄Π°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΆΠ΅ ΠΈΡ
Π½Π°ΡΠ½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.
ΠΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠΆΠΈΠ²Π°Π»ΠΎ, Π½ΠΎ ΠΏΡΠΎΠΆΠΈΡΡ ΠΌΠΎΠ³Π»ΠΎ Π½Π΅Π΄ΠΎΠ»Π³ΠΎ, Π²Π΅ΡΠ΅ΡΠΎΠΌ ΡΠΎΠΉ ΠΆΠ΅ ΠΏΡΡΠ½ΠΈΡΡ ΠΆΠΈΠ»ΠΎ Π΄ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ, Π½ΠΎ ΡΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ Π΄Π½Ρ ΡΠ°ΠΊΠΈ ΡΠ½ΠΎΠ²Π° ΡΠ²Π°Π»ΠΈΠ»ΠΎΡΡ. ΠΠ°ΡΡΠΈΠ½Π° Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ»Π° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ: 11 ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΊ Π±Π°Π·Π΅, ΠΈ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½, Π²ΡΠΎΠ΄Π΅ Π±Ρ, ΡΡΠΎ-ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ.
ΠΠ°ΠΌΡΡΡ, ΠΊΡΡΠ°ΡΠΈ, Π±ΡΠ»Π° Π½Π° ΠΌΠΈΠ½ΠΈΠΌΡΠΌΠ΅. Π‘ΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ OOM ΠΏΡΠΈΠ²ΡΠ» ΠΌΠ΅Π½Ρ ΠΊ ΠΏΠΎΠΈΡΠΊΡ ΠΏΡΠΈΡΠΈΠ½, Π½Π΅ ΠΌΠΎΠ³Ρ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΏΡΠΈ ΠΏΠΎΠΈΡΠΊΠ΅ ΠΏΡΠΈΡΠΈΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ Π½Π°ΡΠ°ΡΡ Π°ΠΊΡΠΈΠ²Π½ΡΡ Π±ΠΎΡΡΠ±Ρ Ρ OOM.
ΠΠΎΠ³Π΄Π° Ρ ΠΎΡΠΊΡΡΠ» Π΄Π°ΠΌΠΏ Π² JVVM, ΠΈΠ· Π½Π΅Π³ΠΎ Π±ΡΠ»ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ½ΡΡΡ.
ΠΠΎΠ΄ΡΠΎΠ·Π½Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΎ, ΡΡΠΎ ΠΏΡΠΈΡΠΈΠ½Π° Π³Π΄Π΅-ΡΠΎ Π² ΡΠ°Π±ΠΎΡΠ΅ Ρ Π±Π°Π·ΠΎΠΉ.
ΠΠΎΠΈΡΠΊ ΡΡΠ΅Π΄ΠΈ ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠΊΠ°Π·Π°Π» ΠΌΠ½Π΅, ΡΡΠΎ Π² ΠΏΠ°ΠΌΡΡΠΈ Π°ΠΆ 29 DataSource, Ρ
ΠΎΡΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π²ΡΠ΅Π³ΠΎ 7.
ΠΡΠΎ ΠΈ Π΄Π°Π»ΠΎ ΠΌΠ½Π΅ ΡΠΎΡΠΊΡ, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΎΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ, Π½Π°ΡΠ°ΡΡ ΡΠ°ΡΠΏΡΡΡΠ²Π°ΡΡ ΠΊΠ»ΡΠ±ΠΎΠΊ.
Π‘ΠΈΠ΄Π΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»Π°ΡΡΠ²Π°ΡΡ Π² ΠΏΡΠΎΡΠΌΠΎΡΡΠΎΠ²ΡΠΈΠΊΠ΅ Π²ΡΠ΅ ΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π±ΡΠ»ΠΎ Π½Π΅ΠΊΠΎΠ³Π΄Π°, ΠΈ ΠΌΠΎΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π°ΠΊΠΎΠ½Π΅Ρ-ΡΠΎ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ»Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ° OQL Console, Ρ ΠΏΠΎΠ΄ΡΠΌΠ°Π», ΡΡΠΎ Π²ΠΎΡ ΠΎΠ½, ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΡΡΠΈΠ½Ρ β Ρ ΠΈΠ»ΠΈ Π½Π°ΡΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Ρ Π½Π° ΠΏΠΎΠ»Π½ΡΡ ΠΊΠ°ΡΡΡΠΊΡ, ΠΈΠ»ΠΈ ΡΠ°ΠΊ ΠΈ Π·Π°Π±ΡΡ Π½Π° Π²ΡΡ ΡΡΠΎ.
ΠΡΠ΅ΠΆΠ΄Π΅, ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅ Π±ΡΠ» Π·Π°Π΄Π°Π½ Π²ΠΎΠΏΡΠΎΡ Π³ΡΠ³Π»Ρ, ΠΈ ΠΎΠ½ Π»ΡΠ±Π΅Π·Π½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ» ΡΠΏΠ°ΡΠ³Π°Π»ΠΊΡ (cheat sheet) ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ OQL Π² JVVM: http://visualvm.java.net/oqlhelp.html
Π‘Π½Π°ΡΠ°Π»Π° ΠΎΠ±ΠΈΠ»ΠΈΠ΅ ΡΠΆΠ°ΡΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΡΠΈΠ²Π΅Π»ΠΎ ΠΌΠ΅Π½Ρ Π² ΡΠ½ΡΠ½ΠΈΠ΅, Π½ΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π³ΡΠ³Π»-ΡΡ Π½Π° ΡΠ²Π΅Ρ ΡΠ°ΠΊΠΈ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ OQL-Π·Π°ΠΏΡΠΎΡ:
ΠΡΠΎ ΡΠΆΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½Π°Ρ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½Π½Π°Ρ, ΡΠΈΠ½Π°Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ ΡΡΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° π
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅:
ΠΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ Π½Π° BasicDataSource#7 ΠΌΡ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π½Π° Π½ΡΠΆΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Instances:
Π§Π΅ΡΠ΅Π· Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π΄ΠΎ ΠΌΠ΅Π½Ρ Π΄ΠΎΡΠ»ΠΎ, ΡΡΠΎ Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎ Π½Π΅ΡΡ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² ΡΠ΅Π³Π΅ Resource Π² ΡΠΎΠΌΠΊΠ΅ΡΠ΅, Π² ΡΠ°ΠΉΠ»Π΅ /conf/context.xml. ΠΠ΅Π΄Ρ Π² Π΄Π°ΠΌΠΏΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ maxTotal ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 8, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ, ΠΊΠ°ΠΊ ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΈ maxActive ΡΠ°Π²Π½ΡΠΌ 20β¦
Π’ΡΡ-ΡΠΎ Π΄ΠΎ ΠΌΠ΅Π½Ρ ΠΈ Π½Π°ΡΠ°Π»ΠΎ Π΄ΠΎΡ
ΠΎΠ΄ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΆΠΈΠ»ΠΎ Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΏΡΠ»Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π²ΡΠ΅ ΡΡΠΈ Π΄Π²Π΅ Π½Π΅Π΄Π΅Π»ΠΈ!
ΠΠ»Ρ ΠΊΡΠ°ΡΠΊΠΎΡΡΠΈ Π½Π°ΠΏΠΈΡΡ ΡΡΡ, ΡΡΠΎ Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Tomcat ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠ»Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ β DBCP, ΡΠΎ Π² 7ΠΌ ΡΠΎΠΌΠΊΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ DBCP Π²Π΅ΡΡΠΈΠΈ 1.4, Π° Π² 8ΠΌ ΡΠΎΠΌΠΊΠ΅ΡΠ΅ β ΡΠΆΠ΅ DBCP 2.0, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ, ΠΊΠ°ΠΊ Ρ ΠΏΠΎΡΠΎΠΌ Π²ΡΡΡΠ½ΠΈΠ», ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ! Π ΠΏΡΠΎ maxTotal Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΠ°ΠΉΡΠ° Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ π
http://commons.apache.org/proper/commons-dbcp/
Β«Users should also be aware that some configuration options (e.g. maxActive to maxTotal) have been renamed to align them with the new names used by Commons Pool 2.Β»
ΠΡΠΈΡΠΈΠ½Ρ
ΠΠ±ΠΎΠ·Π²Π°Π» ΠΈΡ
ΠΏΠΎ Π²ΡΡΠΊΠΎΠΌΡ, ΡΡΠΏΠΎΠΊΠΎΠΈΠ»ΡΡ, ΠΈ ΡΠ΅ΡΠΈΠ» ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ.
ΠΠ°ΠΊ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΠΊΠ»Π°ΡΡ BasicDataSourceFactory ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΡΠΎΡ ΡΠ°ΠΌΡΠΉ Resource, ΡΠΌΠΎΡΡΠΈΡ, Π΅ΡΡΡ Π»ΠΈ Π½ΡΠΆΠ½ΡΠ΅ Π΅ΠΌΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΈ Π·Π°Π±ΠΈΡΠ°Π΅Ρ ΠΈΡ
Π² ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ BasicDataSource, ΠΌΠΎΠ»ΡΠ° ΠΈΠ³Π½ΠΎΡΠΈΡΡΡ Π½Π°ΠΏΡΠΎΡΡ Π²ΡΡ, ΡΡΠΎ Π΅Π³ΠΎ Π½Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ.
Π’Π°ΠΊ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π»ΠΈ ΡΠ°ΠΌΡΠ΅ Π²Π΅ΡΡΠ»ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, maxActive => maxTotal, maxWait => maxWaitMillis, removeAbandoned => removeAbandonedOnBorrow & removeAbandonedOnMaintenance.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ maxTotal, ΠΊΠ°ΠΊ ΠΈ ΡΠ°Π½Π΅Π΅, ΡΠ°Π²Π΅Π½ 8; removeAbandonedOnBorrow, removeAbandonedOnMaintenance = false, maxWaitMillis ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Β«ΠΆΠ΄Π°ΡΡ Π²Π΅ΡΠ½ΠΎΒ».
ΠΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΡΠΎ ΠΏΡΠ» ΠΎΠΊΠ°Π·Π°Π»ΡΡ ΡΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ; Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ β ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ»ΡΠ° ΠΆΠ΄ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΡΡΡΡ; ΠΈ Π΄ΠΎΠ±ΠΈΠ²Π°Π΅Ρ Π²ΡΡ ΠΌΠΎΠ»ΡΠ°Π½ΠΊΠ° Π² Π»ΠΎΠ³Π°Ρ
ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ Β«Π·Π°Π±ΡΠΎΡΠ΅Π½Π½ΡΡ
Β» ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ β ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΌΠ΅ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΌΡΠ΄Π°ΠΊ ΠΊΠΎΠ΄ Ρ
Π²Π°ΡΠ°Π΅Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, Π½ΠΎ Π½Π΅ ΠΎΡΠ΄Π°ΡΡ Π΅Π³ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΠΏΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΎ ΡΠ΅ΠΉΡΠ°Ρ Π²ΡΡ ΠΌΠΎΠ·Π°ΠΈΠΊΠ° ΡΠ»ΠΎΠΆΠΈΠ»Π°ΡΡ Π±ΡΡΡΡΠΎ, Π° Π΄ΠΎΠ±ΡΠ²Π°Π»ΠΈΡΡ ΡΡΠΈ Π·Π½Π°Π½ΠΈΡ Π΄ΠΎΠ»ΡΡΠ΅.
Β«Π’Π°ΠΊ Π±ΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎΒ», ΡΠ΅ΡΠΈΠ» Ρ, ΠΈ Π·Π°ΠΏΠΈΠ»ΠΈΠ» ΠΏΠ°ΡΡΠΈΠΊ (https://issues.apache.org/jira/browse/DBCP-435, Π²ΡΡΠ°Π·ΠΈΠ»ΡΡ Π² http://svn.apache.org/viewvc/commons/proper/dbcp/tags/DBCP_2_1/src/main/java/org/apache/commons/dbcp2/BasicDataSourceFactory.java?view=markup ), ΠΏΠ°ΡΡ Π±ΡΠ» ΠΏΡΠΈΠ½ΡΡ ΠΈ Π²ΠΎΡΡΠ» Π² Π²Π΅ΡΡΠΈΡ DBCP 2.1. ΠΠΎΠ³Π΄Π° ΠΈ Π΅ΡΠ»ΠΈ Tomcat 8 ΠΎΠ±Π½ΠΎΠ²ΠΈΡ Π²Π΅ΡΡΠΈΡ DBCP Π΄ΠΎ 2.1+, Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π°Π΄ΠΌΠΈΠ½Π°ΠΌ ΠΎΡΠΊΡΠΎΡΡΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°ΠΉΠ½Ρ ΠΏΡΠΎ ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Resource π
ΠΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠΈΡΡΠ΅ΡΡΠ²ΠΈΡ ΠΌΠ½Π΅ Π»ΠΈΡΡ ΠΎΡΡΠ°Π»ΠΎΡΡ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π΅ΡΡ ΠΎΠ΄Π½Ρ Π΄Π΅ΡΠ°Π»Ρ β ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΡΡΡΠ° Π² Π΄Π°ΠΌΠΏΠ΅ Π±ΡΠ»ΠΎ Π°ΠΆ 29 DataSource’ΠΎΠ² Π²ΠΌΠ΅ΡΡΠΎ Π²ΡΠ΅Π³ΠΎ 7 ΡΡΡΠΊ. Π Π°Π·Π³Π°Π΄ΠΊΠ° ΠΊΡΠΎΠ΅ΡΡΡ Π² Π±Π°Π½Π°Π»ΡΠ½ΠΎΠΉ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ΅, 7*4=28 +1=29.
ΠΠ° ΠΊΠ°ΠΆΠ΄ΡΡ ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΡ Π²Π½ΡΡΡΠΈ ΠΏΠ°ΠΏΠΊΠΈ /webapps ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΠ²ΠΎΡ ΠΊΠΎΠΏΠΈΡ /conf/context.xml, Π° Π·Π½Π°ΡΠΈΡ ΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Resource, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΌ Π΅ΡΡΡ, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΌΠ½ΠΎΠΆΠ°ΡΡ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠ»ΠΎΠ², ΠΏΠΎΠ΄Π½ΡΡΡΡ
Π² ΠΏΠ°ΠΌΡΡΠΈ ΡΠΎΠΌΠΊΠ΅ΡΠ°. ΠΠ° Π²ΠΎΠΏΡΠΎΡ Β«ΡΡΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π΅Π»Π°ΡΡ?Β» ΠΎΡΠ²Π΅Ρ Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΊΠΈΠΌ: Π½ΡΠΆΠ½ΠΎ Π²ΡΠ½Π΅ΡΡΠΈ Π²ΡΠ΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ Resource ΠΈΠ· /conf/context.xml Π² ΡΠ°ΠΉΠ» /conf/server.xml, Π²Π½ΡΡΡΡ ΡΠ΅Π³Π° GlobalNamingResources. Π’Π°ΠΌ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΠΎΠ΄ΠΈΠ½, ΠΈΠΌΠ΅ΡΡΠΈΠΉΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Resource name=Β«UserDatabaseΒ», Π²ΠΎΡ ΠΏΠΎΠ΄ Π½ΠΈΠΌ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΉΡΠ΅ ΡΠ²ΠΎΠΈ ΠΏΡΠ»Ρ. ΠΠ°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ΅Π³ΠΎΠΌ ResourceLink, Π΅Π³ΠΎ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅, Π²Π½ΡΡΡΡ ΡΠ°ΠΉΠ»Π° /META-INF/context.xml β ΡΡΠΎ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Β«per-app contextΒ», ΡΠΎ Π΅ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π£ ResourceLink ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ name ΠΈ global ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°:
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΡ ΡΡΠ°Π»ΠΎ ΡΡΠ½ΠΎ: 11 ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π±ΡΠ»ΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ, Π°ΠΊΡΠΈΠ²Π½ΠΎΠΌ DataSource Π±ΡΠ»ΠΎ ΡΡΠ΅Π΄Π΅Π½ΠΎ 8 ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ (maxTotal = 8), ΠΈ Π΅ΡΡ ΠΏΠΎ minIdle=1 Π² ΡΡΡΡ Π΄ΡΡΠ³ΠΈΡ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ DataSource-ΠΊΠΎΠΏΠΈΡΡ .
Π ΡΡ ΠΏΡΡΠ½ΠΈΡΡ ΠΌΡ ΠΎΡΠΊΠ°ΡΠΈΠ»ΠΈΡΡ Π½Π° Tomcat 7, ΠΊΠΎΡΠΎΡΡΠΉ Π»Π΅ΠΆΠ°Π» ΡΡΠ΄ΡΡΠΊΠΎΠΌ, ΠΈ ΠΆΠ΄Π°Π», ΠΊΠΎΠ³Π΄Π° ΠΎΡ Π½Π΅Π³ΠΎ ΠΈΠ·Π±Π°Π²ΡΡΡΡ, ΡΡΠΎ Π΄Π°Π»ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎ Π²ΠΎ Π²ΡΡΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ.
ΠΠ»ΡΡ ΠΏΠΎΠ·ΠΆΠ΅, ΡΠΆΠ΅ Π½Π° TC7, ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ»Π°ΡΡ ΡΡΠ΅ΡΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, Π²ΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ removeAbandoned+logAbandoned. DBCP ΡΠ°Π΄ΠΎΡΡΠ½ΠΎ ΡΠΎΠΎΠ±ΡΠΈΠ» Π² Π»ΠΎΠ³ΡΠ°ΠΉΠ» catalina.log ΠΎ ΡΠΎΠΌ, ΡΡΠΎ
ΠΠΎΡ ΡΡΠΎΡ Π²ΠΎΡ ΠΏΠ»ΠΎΡ ΠΎΠΉΠΠ»ΠΎΡ ΠΎΠΉΠΠ΅ΡΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ Π² ΡΠΈΠ³Π½Π°ΡΡΡΠ΅ Connection con, Π½ΠΎ Π²Π½ΡΡΡΠΈ Π±ΡΠ»Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ Β«con = getConnection();Β», ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈ ΡΡΠ°Π»Π° ΠΊΠ°ΠΌΠ½Π΅ΠΌ ΠΏΡΠ΅ΡΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ. Π‘ΡΠΏΠ΅ΡΠΠ»Π°ΡΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅Π΄ΠΊΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π° Π½Π΅Π³ΠΎ ΠΈ Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°Π»ΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ. ΠΠ»ΡΡ ΠΊ ΡΡΠΎΠΌΡ, Π²ΡΠ·ΠΎΠ²Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΠ»ΠΈ, Ρ ΡΠ°ΠΊ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, Π½Π΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ Π΄Π½Ρ, ΡΠ°ΠΊ ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ ΠΈ ΠΏΠΎΠ΄Π²ΠΈΡΠ°Π»ΠΎ, ΡΠΎ Π½ΠΈΠΊΠΎΠΌΡ ΡΠΆΠ΅ Π½Π΅ Π±ΡΠ»ΠΎ Π΄Π΅Π»Π° Π΄ΠΎ ΡΡΠΎΠ³ΠΎ. Π Π² Π’ΡΠ‘Π°ΠΌΡΡΠΡΡΠ½ΠΈΡΡ ΠΏΡΠΎΡΡΠΎ Π·Π²ΡΠ·Π΄Ρ ΡΠΎΡΠ»ΠΈΡΡ, Π½Π°ΡΠ°Π»ΡΠ½ΠΈΠΊΡ Π΄Π΅ΠΏΠ°ΡΡΠ°ΠΌΠ΅Π½ΡΠ° Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ° ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠΎΠ΅-ΡΡΠΎ π
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β2
Π§ΡΠΎ ΠΆΠ΅ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Β«ΡΠΎΠ±ΡΡΠΈΡ β2Β» β ΠΌΠ½Π΅ ΠΎΡΠ΄Π°Π»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³, ΠΈ ΠΎΠ½ΠΎ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ
ΡΡΡ ΠΆΠ΅ Π²Π·Π΄ΡΠΌΠ°Π»ΠΎ ΡΠΏΠ°ΡΡΡ.
ΠΠ°ΠΌΠΏΡ ΠΏΠΎΠΏΠ°Π»ΠΈ ΡΠΆΠ΅ ΠΊΠΎ ΠΌΠ½Π΅, ΠΈ Ρ ΡΠ΅ΡΠΈΠ» ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΏΠΎΠΊΠΎΠ²ΡΡΡΡΡ ΠΈ ΠΈΡ
ΡΠΎΠΆΠ΅.
ΠΡΠΊΡΡΠ» Π΄Π°ΠΌΠΏ Π² JVVM, ΠΈ Β«ΡΡ-ΡΠΎ ΠΏΡΠΈΡΠ½ΡΠ»Β»:
Π§ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ ΠΈΠ· Object[], Π΄Π° Π΅ΡΡ ΠΈ Π² ΡΠ°ΠΊΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅?
( ΠΠΏΡΡΠ½ΡΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, ΡΠ²ΠΈΠ΄Π΅Π» ΡΠΆΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ, ΠΏΡΠ°Π²Π΄Π°? π )
Π’Π°ΠΊ Ρ ΠΌΠ΅Π½Ρ Π·Π°ΡΠΎΠ΄ΠΈΠ»Π°ΡΡ ΠΌΡΡΠ»Ρ Β«Π½Ρ Π½Π΅ΡΠΆΠ΅Π»ΠΈ Π½ΠΈΠΊΡΠΎ ΡΠ°Π½Π΅Π΅ Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π»ΡΡ ΡΡΠΈΠΌ, Π²Π΅Π΄Ρ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΡΠΆΠ΅ Π΅ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ!Β». Π’Π°ΠΊ Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π½Π° StackOverflow: http://stackoverflow.com/questions/2064427/recommendations-for-a-heap-analysis-tool-for-java.
ΠΠΎΡΠΌΠΎΡΡΠ΅Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ, Ρ ΡΠ΅ΡΠΈΠ» ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ Π½Π° MAT, Π½Π°Π΄ΠΎ Π±ΡΠ»ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Ρ
ΠΎΡΡ ΡΡΠΎ-ΡΠΎ, Π° ΡΡΠΎ ΠΎΡΠΊΡΡΡΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π΄Π° Π΅ΡΡ ΠΈ Ρ ΠΊΡΠ΄Π° Π±ΠΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π³ΠΎΠ»ΠΎΡΠΎΠ², ΡΠ΅ΠΌ Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
ΠΏΡΠ½ΠΊΡΠΎΠ².
Eclipse Memory Analyzing Tool
ΠΡΠ°ΠΊ, MAT.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Eclipse, ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ MAT ΡΡΠ΄Π°, ΠΏΠΎΡΠΎΠΌΡ ΠΊΠ°ΠΊ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ MAT Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ ΠΏΠ»ΠΎΡ
ΠΎ, ΡΠ°ΠΌ ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ ΡΠ΅ΡΡΠΎΠ²ΡΠΈΠ½Π° Ρ Π΄ΠΈΠ°Π»ΠΎΠ³Π°ΠΌΠΈ, Π² Π½ΠΈΡ
Π½Π΅ Π²ΠΈΠ΄Π½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π² ΠΏΠΎΠ»ΡΡ
. ΠΡΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΊΡΠΎ-ΡΠΎ ΠΏΠΎΠ΄ΡΠΊΠ°ΠΆΠ΅Ρ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
, ΡΠ΅Π³ΠΎ Π΅ΠΌΡ Π½Π΅ Ρ
Π²Π°ΡΠ°Π΅Ρ, Π½ΠΎ Ρ ΡΠ΅ΡΠΈΠ» ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² MAT Π² Eclipse.
ΠΡΠΊΡΡΠ² Π΄Π°ΠΌΠΏ Π² MAT Ρ Π·Π°ΠΏΡΠΎΡΠΈΠ» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Leak Suspects Report.
Π£Π΄ΠΈΠ²Π»Π΅Π½ΠΈΡ Π½Π΅ Π±ΡΠ»ΠΎ ΠΏΡΠ΅Π΄Π΅Π»Π°, ΡΠ΅ΡΡΠ½ΠΎ Π³ΠΎΠ²ΠΎΡΡ.
1.2 Π³ΠΈΠ³Π° Π²Π΅ΡΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π² Π±Π°Π·Ρ.
ΠΠ°ΠΆΠ΄ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΈΡ ΠΎΡ 17 Π΄ΠΎ 81 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡΠ°.
ΠΡ ΠΈ Π΅ΡΡ Β«Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎΒ» ΡΠ°ΠΌ ΠΏΡΠ».
ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΠΎΠΌΠΎΠ³ ΠΎΡΡΡΡ Dominator Tree:
ΠΡΠΈΡΠΈΠ½ΠΎΠΉ Π²ΡΠ΅Ρ
ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ ΠΎΠΊΠ°Π·Π°Π»ΠΈΡΡ ΠΊΠΈΠ»ΠΎΠΌΠ΅ΡΡΡ SQLWarning’ΠΎΠ², Π±Π°Π·Π° Π½Π°ΡΡΠΎΠΉΡΠΈΠ²ΠΎ ΠΏΡΡΠ°Π»Π°ΡΡ Π΄Π°ΡΡ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ Β«010SK: Database cannot set connection option SET_READONLY_TRUE.Β», Π° ΠΏΡΠ» ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ BoneCP Π½Π΅ Π²ΡΡΠΈΡΠ°Π΅Ρ SQLWarning’ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π² ΠΏΡΠ» (ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠΎ Π³Π΄Π΅-ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°ΡΡ? ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅, Π΅ΡΠ»ΠΈ ΠΊΡΠΎ Π·Π½Π°Π΅Ρ).
ΠΡΠ³Π» ΡΠΊΠ°Π·Π°Π», ΡΡΠΎ ΡΠ°ΠΊΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ Sybase ASE ΠΈΠ·Π²Π΅ΡΡΠ½Π° Π΅ΡΡ Ρ 2004 Π³ΠΎΠ΄Π°: https://forum.hibernate.org/viewtopic.php?f=1&t=932731
ΠΡΠ»ΠΈ Π²ΠΊΡΠ°ΡΡΠ΅, ΡΠΎ Β«Sybase ASE doesn’t require any optimizations, therefore setReadOnly() produces a SQLWarning.Β», ΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΡ Π΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΡΠΎΠΌΡ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ β ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π² ΠΏΡΠ» Π²ΡΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π±Π°Π·Ρ ΠΎΡΠΈΡΠ°ΡΡΡΡ Π² ΡΠΈΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠΆΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½ΠΈΠΊΠΎΠΌΡ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ.
Π DBCP ΡΠ°ΠΊΠΈ ΡΠΌΠ΅Π΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ: http://svn.apache.org/viewvc/commons/proper/dbcp/tags/DBCP_1_4/src/java/org/apache/commons/dbcp/PoolableConnectionFactory.java?view=markup, ΠΌΠ΅ΡΠΎΠ΄ passivateObject(Object obj), Π² ΡΡΡΠΎΠΊΠ΅ 687 ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ conn.clearWarnings();, ΡΡΠΎΡ Π²ΡΠ·ΠΎΠ² ΠΈ ΡΠΏΠ°ΡΠ°Π΅Ρ ΠΎΡ ΠΊΠΈΠ»ΠΎΠΌΠ΅ΡΡΠΎΠ² SQLWarning’ΠΎΠ² Π² ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ± ΡΡΠΎΠΌ Ρ ΡΠ·Π½Π°Π» ΠΈΠ· ΡΠΈΠΊΠ΅ΡΠ°: https://issues.apache.org/jira/browse/DBCP-102
Π’Π°ΠΊΠΆΠ΅ ΠΌΠ½Π΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π°Π»ΠΈ ΠΏΡΠΎ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΈΠΊΠ΅Ρ Π² Π±Π°Π³ΡΡΠ΅ΠΊΠ΅ΡΠ΅: https://issues.apache.org/jira/browse/DBCP-234, Π½ΠΎ ΠΎΠ½ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠΆΠ΅ Π²Π΅ΡΡΠΈΠΈ DBCP 2.0.
Π ΠΈΡΠΎΠ³Π΅ Ρ ΠΏΠ΅ΡΠ΅Π²ΡΠ» ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° DBCP (ΠΏΡΡΡΡ ΠΈ Π²Π΅ΡΡΠΈΠΈ 1.4). ΠΡΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΠ° Π½Π° ΡΠ΅ΡΠ²ΠΈΡ ΠΈ Π½Π΅ΠΌΠ°Π»Π΅Π½ΡΠΊΠ°Ρ (ΠΎΡ 800 Π΄ΠΎ 2ΠΊ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΠΌΠΈΠ½ΡΡΡ), Π½ΠΎ Π²ΡΡ ΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ Ρ ΠΎΡΠΎΡΠΎ, Π° ΡΡΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅. Π ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ΄Π΅Π»Π°Π», ΠΏΠΎΡΠΎΠΌΡ ΠΊΠ°ΠΊ BoneCP ΡΠΆΠ΅ ΠΏΡΡΡ ΠΌΠ΅ΡΡΡΠ΅Π² Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ, ΠΏΡΠ°Π²Π΄Π°, Π΅ΠΌΡ Π½Π° ΡΠΌΠ΅Π½Ρ ΠΏΡΠΈΡΡΠ» HikariCP. ΠΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π° Π² Π΅Π³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠ°Ρ β¦
Π‘ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ Ρ OOM
ΠΠΏΠ΅ΡΠ°ΡΠ»ΠΈΠ²ΡΠΈΡΡ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ MAT ΠΌΠ½Π΅ Π²ΡΡ ΡΠ°Π·Π»ΠΎΠΆΠΈΠ» ΠΏΠΎ ΠΏΠΎΠ»ΠΎΡΠΊΠ°ΠΌ, Ρ ΡΠ΅ΡΠΈΠ» Π½Π΅ Π·Π°Π±ΡΠ°ΡΡΠ²Π°ΡΡ ΡΡΠΎΡ Π΄Π΅ΠΉΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΈ ΠΏΠΎΠ·ΠΆΠ΅ ΠΎΠ½ ΠΌΠ½Π΅ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΠ»ΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΠΊΠ°ΠΊ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΅ΡΡ ΠΎΡΡΠ°Π»ΠΈΡΡ Π²ΡΡΡΠ΅ΡΠΊΠΈΠ΅ Β«Π½Π΅ΡΡΡΡΠ½ΠΊΠΈΒ» β Π½Π΅ΡΡΡΡΠ½Π½ΡΠ΅ Π²Π΅ΡΠΈ Π² ΠΊΠΎΠ΄Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΊΠΎΠ΄Π΅ Ρ ΡΠ°Π½ΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΊΠ»Π΅ΠΈΠ²Π°Π΅Ρ Π»Π°ΡΡΡ. Π― ΠΈΡ ΠΎΡΠ»Π°Π²Π»ΠΈΠ²Π°Ρ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ.
ΠΠΎΠΎΡΡΠΆΠΈΠ²ΡΠΈΡΡ ΠΎΠ±ΠΎΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, Ρ ΠΏΡΠΈΠ½ΡΠ»ΡΡ ΠΊΠΎΠ²ΡΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΈΡΠ»Π°Π½Π½ΡΠΉ Π΄Π°ΠΌΠΏ Π² ΠΏΠΎΠΈΡΠΊΠ°Ρ
ΠΏΡΠΈΡΠΈΠ½ ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΏΠΎ OOM.
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π²ΡΠ΅ OOM ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΈ ΠΌΠ΅Π½Ρ ΠΊ TaskThread.
Π Π΅ΡΠ»ΠΈ Π½Π°ΠΆΠ°ΡΡ Π½Π° Π½Π°Π΄ΠΏΠΈΡΡ See stacktrace, ΡΠΎ Π΄Π°, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΊΠ°ΠΊ ΡΠ°Π· Π±Π°Π½Π°Π»ΡΠ½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΏΠΎΡΠΎΠΊ Π²Π΄ΡΡΠ³ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ ΡΠΏΠ°Π» ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΎΡΠΌΠ°ΡΡΠ°Π»ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ Π·Π΄Π΅ΡΡ Π½ΠΈΡΡΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΡΠΈΡΠΈΠ½Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ OOM, Π·Π΄Π΅ΡΡ Π»ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΠ°ΠΉΡΠΈ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ°-ΡΡΠΎ, Π² ΡΠΈΠ»Ρ Π½Π΅Π·Π½Π°Π½ΠΈΡ Π²ΡΠ΅ΠΉ ΠΌΠ°Π³ΠΈΠΈ OQL Π² MAT, ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ JVVM.
ΠΠ°Π³ΡΡΠΆΠ°Π΅ΠΌ Π΄Π°ΠΌΠΏ ΡΠ°ΠΌ, ΠΈ ΠΏΡΡΠ°Π΅ΠΌΡΡ ΠΎΡΡΡΠΊΠ°ΡΡ ΠΏΡΠΈΡΠΈΠ½Ρ!
ΠΡΠΊΠ°ΡΡ ΠΌΠ½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Π΅ΡΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ
, Π° ΠΏΠΎΡΠ΅ΠΌΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, Π΅ΡΡΡ Π»ΠΈ Π² ΠΏΠ°ΠΌΡΡΠΈ Statement’Ρ.
ΠΠ²Π° SybCallableStatement, ΠΈ ΠΎΠ΄ΠΈΠ½ SybPreparedStatement.
ΠΡΠΌΠ°Ρ, ΡΡΠΎ Π΄Π΅Π»ΠΎ ΡΡΠ»ΠΎΠΆΠ½ΠΈΡΡΡ, Π΅ΡΠ»ΠΈ Statement’ΠΎΠ² Π±ΡΠ΄Π΅Ρ ΠΊΡΠ΄Π° Π±ΠΎΠ»ΡΡΠ΅, Π½ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΡΠΈΡ
ΡΠΎΠ²Π°Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΠΊΠ°Π·Π°Π² Π² where Π½ΡΠΆΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ, Π΄ΡΠΌΠ°Ρ, Π²ΡΡ Ρ ΠΠ°Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ. ΠΠ»ΡΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, ΡΡΠΎΠΈΡ Ρ
ΠΎΡΠΎΡΠ΅Π½ΡΠΊΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² MAT, ΡΡΠΎ Π·Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΡΠ°Π΅ΡΡΡ ΠΎΡΠΌΠ°ΡΡΠ°Π»ΠΈΡΡ ΠΏΠΎΡΠΎΠΊ, ΠΊΠ°ΠΊΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΈ ΡΡΠ°Π½Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½Π΅Π΅, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ· Statement’ΠΎΠ² Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΊΠ°ΡΡ.
ΠΠ΅ ΡΠΎ, ΡΡΠΎ Β«Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅Β» Π²ΡΠ·ΠΎΠ²Ρ.
Π Π²ΠΎΡ ΠΈ Π΄ΠΈΡΡ!
ΠΠ»Ρ ΡΠΈΡΡΠΎΡΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΈΠ½ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ Π·Π°ΠΏΡΠΎΡ Π² Π»ΡΠ±ΠΈΠΌΠΎΠΉ ΠΠ-IDE, ΠΈ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΅Π½Ρ Π΄ΠΎΠ»Π³ΠΎ ΠΎΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ, Π° Π΅ΡΠ»ΠΈ ΠΏΠΎΠΊΠΎΠΏΠ°ΡΡΡΡ Π² Π½Π΅Π΄ΡΠ°Ρ
Ρ
ΡΠ°Π½ΠΈΠΌΠΊΠΈ, ΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ ΡΠ°ΠΌ ΠΏΡΠΎΡΡΠΎ ΠΈΠ· Π±Π°Π·Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π°ΠΌ Π½Π΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ, Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ 2 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° ΡΡΡΠΎΠΊ ΠΏΠΎ ΡΠ°ΠΊΠΎΠΌΡ Π·Π°ΠΏΡΠΎΡΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ. ΠΡΠΈ Π΄Π²Π° ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° Π΄Π°ΠΆΠ΅ Π²Π»Π°Π·ΡΡ Π² ΠΏΠ°ΠΌΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½ΠΎ Π²ΠΎΡ ΠΏΠΎΠΏΡΡΠΊΠ° ΠΎΡΠΌΠ°ΡΡΠ°Π»ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ°ΡΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΎΠ΅ ΡΠ΅Π±Π΅ Ρ
Π°ΡΠ°ΠΊΠΈΡΠΈ. π
ΠΡΠΈ ΡΡΠΎΠΌ GC ΡΡΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ±ΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ ΡΠ»ΠΈΠΊΠΈ, Π½ΠΎ Π½Π΅ ΡΠΏΠ°ΡΠ»ΠΎ Π΅Π³ΠΎ ΡΡΠΎ, Π²ΡΡ ΠΆΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΎΡΡΠ°Π»ΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ, ΠΈ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΊΠ°Π·Π°Π½.
ΠΠΎΡΠ΅ΠΌΡ-ΡΠΎ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ΅Π³ΠΎ ΡΡΠΎΠ³ΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π° ΠΏΠΎΡΡΠ²ΡΡΠ²ΠΎΠ²Π°Π» ΡΠ΅Π±Ρ ΡΠ΅ΠΌ Π΅ΡΡ Π½Π΅ΡΠ΄Π°ΡΠ½ΠΈΠΊΠΎΠΌ.
ΠΡΠΎΡΠ°Π½ΠΈΠ΅
ΠΠΎΡ ΠΈ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΠΎΡΡ ΠΌΠΎΡ ΠΏΠΎΠ²Π΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅, Π½Π°Π΄Π΅ΡΡΡ, ΠΠ°ΠΌ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΎΡΡ π
Π₯ΠΎΡΠ΅Π» Π±Ρ Π²ΡΡΠ°Π·ΠΈΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡΡ ΡΠ²ΠΎΠ΅ΠΌΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΈΠΊΡ, ΠΎΠ½ Π΄Π°Π» ΠΌΠ½Π΅ Π²ΡΠ΅ΠΌΡ Π²ΠΎ Π²ΡΡΠΌ ΡΡΠΎΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ. Π‘ΡΠΈΡΠ°Ρ ΡΡΠΈ Π½ΠΎΠ²ΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π΄Π΅Π²ΡΡΠΊΠ°ΠΌ ΠΈΠ· Scorini Π·Π° Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎ Π²ΠΊΡΡΠ½ΡΠΉ ΠΊΠΎΡΠ΅, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΏΡΠΎΡΡΡΡ ΡΡΠΈΡ
ΡΠ»ΠΎΠ² Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡΠΈ β Ρ Π΄Π°ΠΆΠ΅ ΡΠΎΠΌΠ½Π΅Π²Π°ΡΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ Π·Π½Π°ΡΡ ΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΈ Π₯Π°Π±ΡΠ°Ρ
Π°Π±ΡΠ° π
Π₯ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½ΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, Π±ΡΠ΄Ρ ΠΎΡΠ΅Π½Ρ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½.
ΠΡΠΌΠ°Ρ, ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠΈΡΠ°ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊ MATβ¦
UPD2 (2015-10-28) | Π‘Π»ΡΡΠ°ΠΉ Π½ΠΎΠΌΠ΅Ρ Π΄Π²Π° ΡΡΠΈ
(ΠΡΠ»ΠΎ ΠΏΡΠΈΠ½ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΈΡΠ°ΡΡ ΡΡΠΎ ΡΡΠ΄Π° ΠΊΠ°ΠΊ Π°ΠΏΠ΄Π΅ΠΉΡ, Π° Π½Π΅ ΠΏΠΈΠ»ΠΈΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ°ΡΡΡ ΠΎ ΡΠΎΠΌ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠΌ):
ΠΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ, Π½ΠΎ ΡΠΆΠ΅ Ρ ΠΡΠ°ΠΊΠ»ΠΎΠ²ΠΎΠΉ Π±Π°Π·ΠΎΠΉ.
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΈΡΡ Ρ XML, ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ ΠΏΠΎΠΈΡΠΊΠΈ ΠΏΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ ΡΠΎΡ
ΡΠ°Π½ΡΠ½Π½ΠΎΠ³ΠΎ XML-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°. Π ΠΎΠ±ΡΠ΅ΠΌ, ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄Π°Π²Π°Π» ΠΎ ΡΠ΅Π±Π΅ Π·Π½Π°ΡΡ ΡΠ΅ΠΌ, ΡΡΠΎ Π²Π΄ΡΡΠ³ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΈΠ½ΡΡΠ°Π½ΡΠΎΠ² ΠΏΠ΅ΡΠ΅ΡΡΠ°Π²Π°Π» ΠΏΠΎΠ΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΈ ΠΆΠΈΠ·Π½ΠΈ.
ΠΠΎΡΡΡΠ² Β«Ρ
ΠΎΡΠΎΡΠΈΠΉΒ» ΡΠ»ΡΡΠ°ΠΉ ΠΏΠΎΡΡΠ΅Π½ΠΈΡΠΎΠ²Π°ΡΡΡΡ Π½Π° ΠΊΠΎΡΠΊΠ°Ρ
, Ρ ΡΠ΅ΡΠΈΠ» ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΅Π³ΠΎ Π΄Π°ΠΌΠΏΡ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ Ρ ΡΠ²ΠΈΠ΄Π΅Π», Π±ΡΠ»ΠΎ Β«Ρ Π²Π°Ρ ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΠ² Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΎΡΡΠ°Π»ΠΎΡΡΒ». 21ΠΊ. Π ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ oracle.xdb.XMLType ΡΠΎΠΆΠ΅ Π΄Π°Π²Π°Π» ΠΆΠ°ΡΡ. Β«ΠΠΎ ΡΡΠΎ ΠΆΠ΅ ΠΡΠ°ΠΊΠ»!Β», Π²Π΅ΡΡΠ΅Π»ΠΎΡΡ Ρ ΠΌΠ΅Π½Ρ Π² Π³ΠΎΠ»ΠΎΠ²Π΅. ΠΠ°Π±Π΅Π³Π°Ρ Π²ΠΏΠ΅ΡΡΠ΄ ΡΠΊΠ°ΠΆΡ ΡΡΠΎ ΡΠ°ΠΊΠΈ Π΄Π°, ΠΎΠ½ Π²ΠΈΠ½ΠΎΠ²Π°Ρ.
ΠΡΠ°ΠΊ, Π²ΠΈΠ΄ΠΈΠΌ ΠΊΡΡΡ T4CConnection, ΠΊΠΎΡΠΎΡΡΠ΅ Π»Π΅ΠΆΠ°Ρ Π² HashMap$Entry. ΠΠ±ΡΠ°ΡΠΈΠ» Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠ°Π·Ρ, ΡΡΠΎ Π²ΡΠΎΠ΄Π΅ Π±Ρ ΠΈ SoftHashMap, ΡΡΠΎ, Π²ΡΠΎΠ΄Π΅ ΠΊΠ°ΠΊ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΡΠ°ΡΡ, ΡΡΠΎ ΠΎΠ½ΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΡΡΠ°ΡΡΠ°ΡΡ Π΄ΠΎ ΡΠ°ΠΊΠΈΡ
ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ². ΠΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΈ ΡΠ°ΠΌΠΈ β 50-60 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ Π² ΠΊΠΎΠ½Π½Π΅ΠΊΡΠ΅, ΠΈ ΠΈΡ
ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΠΠΠΠ.
ΠΠΎΡΠΌΠΎΡΡΠ΅Π², ΡΡΠΎ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ HashMap$Entry β ΡΠ²ΠΈΠ΄Π΅Π», ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΠΊΠ°ΡΡΠΈΠ½Π° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Π°, Π²ΡΡ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ SoftHashMap, Ρ ΠΡΠ°ΠΊΠ»ΠΎΠ²ΡΠΌΠΈ ΠΊΠΎΠ½Π½Π΅ΠΊΡΠ°ΠΌΠΈ.
Π§ΡΠΎ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π»ΠΎΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΎΠΉ. HashMap$Entry Π±ΡΠ»ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΌΠΎΡΠ΅, ΠΈ ΠΎΠ½ΠΈ Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ ΡΠ°ΠΊΡΠΌΠΌΡΠ»ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ Π²Π½ΡΡΡΠΈ oracle.xdb.SoftHashMap.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π΄Π°ΠΌΠΏΠ΅ ΠΊΠ°ΡΡΠΈΠ½Π° Π±ΡΠ»Π° ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅. ΠΠΎ Dominator Tree Π±ΡΠ»ΠΎ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ Π²Π½ΡΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Entry Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΡΡΠΆΡΠ»ΡΠΉ ΡΠ°ΠΊΠΎΠΉ BinXmlProcessorImpl.
-=-=-
ΠΡΠ»ΠΈ ΡΡΠ΅ΡΡΡ, ΡΡΠΎ Ρ Π² ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π±ΡΠ» Π½Π΅ ΡΠΈΠ»ΡΠ½ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ xdb, ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ ΡΠ²ΡΠ·Π°Π½ Ρ XML, ΡΠΎ, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠ΅ΡΡΠ²ΡΠΈΡΡ, Ρ ΡΠ΅ΡΠΈΠ», ΡΡΠΎ Π½Π°Π΄ΠΎ Π±Ρ ΠΏΠΎΠ³ΡΠ³Π»ΠΈΡΡ, Π±ΡΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΊΡΠΎ-ΡΠΎ ΡΠΆΠ΅ Π² ΠΊΡΡΡΠ΅, ΡΡΠΎ ΡΠΎ Π²ΡΠ΅ΠΌ ΡΡΠΈΠΌ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ. Π ΡΡΡΡΡ Π½Π΅ ΠΎΠ±ΠΌΠ°Π½ΡΠ»ΠΎ, ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ Β«oracle.xdb.SoftHashMap T4CConnectionΒ» Π½Π°ΡΠ»ΠΎΡΡ
ΡΠ°Π· piotr.bzdyl.net/2014/07/memory-leak-in-oracle-softhashmap.html
ΠΈ Π΄Π²Π° leakfromjavaheap.blogspot.com/2014/02/memory-leak-detection-in-real-life.html
Π£ΡΠ²Π΅ΡΠ΄ΠΈΠ²ΡΠΈΡΡ, ΡΡΠΎ ΡΡΡ Π²ΡΡ-ΡΠ°ΠΊΠΈ ΠΊΠΎΡΡΠΊ Ρ ΠΡΠ°ΠΊΠ»Π°, Π΄Π΅Π»ΠΎ ΠΎΡΡΠ°Π²Π°Π»ΠΎΡΡ Π·Π° ΠΌΠ°Π»ΡΠΌ.
ΠΠΎΠΏΡΠΎΡΠΈΠ» Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΠ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅: