https://github.com/maxbarsukov-itmo/mispi-4
π· ΠΠΈΠ‘ΠΠ: ΠΠ°Π±ΠΎΡΠ°ΡΠΎΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° β4
https://github.com/maxbarsukov-itmo/mispi-4
itmo java jconsole jmx laboratory-work maxbarsukov mispi monitoring profiling visualvm
Last synced: 3 months ago
JSON representation
π· ΠΠΈΠ‘ΠΠ: ΠΠ°Π±ΠΎΡΠ°ΡΠΎΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° β4
- Host: GitHub
- URL: https://github.com/maxbarsukov-itmo/mispi-4
- Owner: maxbarsukov-itmo
- License: mit
- Created: 2024-05-30T20:10:16.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2025-04-16T15:35:00.000Z (about 1 year ago)
- Last Synced: 2025-04-16T22:56:18.343Z (about 1 year ago)
- Topics: itmo, java, jconsole, jmx, laboratory-work, maxbarsukov, mispi, monitoring, profiling, visualvm
- Language: Java
- Homepage: https://se.ifmo.ru/courses/software-engineering-basics#lab4
- Size: 15.9 MB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ΠΠ°Π±ΠΎΡΠ°ΡΠΎΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° 4
## ΠΠ°ΡΠΈΠ°Π½Ρ `1580`

> web-3-1.0-SNAPSHOT.war... web-3-1.0-SNAPSHOT.war never changes.
|.pdf|.docx|
|-|-|
| [report](./docs/report.pdf) | [report](./docs/report.docx) |
> [!TIP]
> ΠΠ° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π² ΡΡΠΎΠΉ Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΏΠΎΡΡΠ°ΡΠΈΠ» Π½Π΅ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΈ Π½Π΅ Ρ
ΠΎΡΡ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΏΠΎΡΡΠ°ΡΠΈΠ»ΠΈ Π΅ΡΠ΅ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΆΠ΅.
>
> ΠΠΎΡΡΠΎΠΌΡ Ρ Π½Π°ΠΏΠΈΡΠ°Π» ΠΏΠ°ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ
Π³Π°ΠΉΠ΄ΠΈΠΊΠΎΠ² Ρ ΡΠΎΠ²Π΅ΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ ΠΌΠ½Π΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΡ Π»Π°Π±Ρ, ΠΈ, Π½Π°Π΄Π΅ΡΡΡ, ΠΏΠΎΠΌΠΎΠ³ΡΡ ΠΈ Π²Π°ΠΌ.
>
> * Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ _JConsole_ ΠΈ _VisualVM_ ΠΊ WildFly Π½Π° **Helios**'Π΅ Π² [HELIOS_GUIDE.md](./guides/HELIOS_GUIDE.md).
> * Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ ΡΠ±ΠΎΡΠΊΠ΅ ΠΈ Π·Π°ΠΏΡΡΠΊΡ **HttpUnit** (Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠΎΠ²Π΅ΡΡ) Π² [HTTP_UNIT_GUIDE.md](./guides/HTTP_UNIT_GUIDE.md).
> * ΠΡΠ°ΡΠΊΠΎ ΠΏΡΠΎ **JFR** Π² [JFR_GUIDE.md](./guides/JFR_GUIDE.md).
---
## ΠΠ°Π΄Π°Π½ΠΈΠ΅
1. ΠΠ»Ρ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ· [Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ #3](https://se.ifmo.ru/courses/web#lab3) ΠΏΠΎ Π΄ΠΈΡΡΠΈΠΏΠ»ΠΈΠ½Π΅ __"ΠΠ΅Π±-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅"__ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ:
- `MBean`, ΡΡΠΈΡΠ°ΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΡΠΎΡΠ΅ΠΊ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΎΡΠ΅ΠΊ, Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡΠΈΡ
Π² ΠΎΠ±Π»Π°ΡΡΡ. Π ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ **ΡΠΎΠ²Π΅ΡΡΠΈΠ» 3 "ΠΏΡΠΎΠΌΠ°Ρ
Π°" ΠΏΠΎΠ΄ΡΡΠ΄**, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ `MBean` Π΄ΠΎΠ»ΠΆΠ΅Π½ **ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΡΡΠΎΠΌ ΡΠΎΠ±ΡΡΠΈΠΈ**.
- `MBean`, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΉ **ΠΏΡΠΎΡΠ΅Π½ΡΠ½ΠΎΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ "ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΠΉ"** ΠΊ ΠΎΠ±ΡΠ΅ΠΌΡ ΡΠΈΡΠ»Ρ ΠΊΠ»ΠΈΠΊΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ.
2. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ `JConsole` ΠΏΡΠΎΠ²Π΅ΡΡΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
- Π‘Π½ΡΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΡ `MBean`-ΠΊΠ»Π°ΡΡΠΎΠ², ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ
Π² Ρ
ΠΎΠ΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ *Π·Π°Π΄Π°Π½ΠΈΡ 1*.
- ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π²ΡΠ΅ΠΌΡ (Π² *ΠΌΡ*), ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π΅ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π·Π°ΠΏΡΡΠΊΠ° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ.
3. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ `VisualVM` ΠΏΡΠΎΠ²Π΅ΡΡΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
- Π‘Π½ΡΡΡ Π³ΡΠ°ΡΠΈΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΠΉ `MBean`-ΠΊΠ»Π°ΡΡΠΎΠ², ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ
Π² Ρ
ΠΎΠ΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ *Π·Π°Π΄Π°Π½ΠΈΡ 1*, Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
- ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ **ΠΈΠΌΡ ΠΊΠ»Π°ΡΡΠ°, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΉ ΠΎΠ±ΡΡΠΌ ΠΏΠ°ΠΌΡΡΠΈ JVM**; ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠ»Π°ΡΡ, Π² ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°Ρ
ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ ΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
4. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ `VisualVM` ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° `IDE NetBeans`, `Eclipse` ΠΈΠ»ΠΈ `Idea` Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΈ ΡΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ Π² [ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅](https://se.ifmo.ru/documents/10180/189115/HttpUnit.tar.gz/7bf1032e-d16e-be85-c71b-dbe73c0178ba?t=1651168887037&download=true). ΠΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ **ΡΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΡΡΡΡ**, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ:
- ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²ΡΡΠ²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
- ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΡΠ΅ΠΉ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ Π²ΡΡΠ²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
- ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ (ΡΠΎ ΡΠΊΡΠΈΠ½ΡΠΎΡΠ°ΠΌΠΈ) ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ» Π²ΡΡΠ²ΠΈΡΡ ΠΈ Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π‘ΡΡΠ΄Π΅Π½Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΏΠΎΠΈΡΠΊΠ° ΠΈ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»Ρ.
### ΠΡΡΡΡ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ:
1. Π’Π΅ΠΊΡΡ Π·Π°Π΄Π°Π½ΠΈΡ.
2. ΠΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ
`MBean`-ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΡΠΎΠΏΡΡΡΡΠ²ΡΡΡΠΈΡ
ΠΊΠ»Π°ΡΡΠΎΠ².
3. Π‘ΠΊΡΠΈΠ½ΡΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ `JConcole` ΡΠΎ ΡΠ½ΡΡΡΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΡΠΌΠΈ, Π²ΡΠ²ΠΎΠ΄Ρ ΠΏΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°.
4. Π‘ΠΊΡΠΈΠ½ΡΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ `VisualVM` ΡΠΎ ΡΠ½ΡΡΡΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΡΠΌΠΈ, Π²ΡΠ²ΠΎΠ΄Ρ ΠΏΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
5. Π‘ΠΊΡΠΈΠ½ΡΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ `VisualVM` Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ ΠΏΠΎ Ρ
ΠΎΠ΄Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠ΅ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
6. ΠΡΠ²ΠΎΠ΄Ρ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅.
### ΠΠΎΠΏΡΠΎΡΡ ΠΊ Π·Π°ΡΠΈΡΠ΅ Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ:
1. **ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³** ΠΈ **ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅**. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ. ΠΡΠ»ΠΈΡΠΈΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΎΡ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
2. ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΎΡΡΠ°Π²Π΅ `JDK`. `JMX`.
3. `MBeans`. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ. ΠΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ° ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°.
4. Π£ΡΠΈΠ»ΠΈΡΠ° `JConsole`. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΎΠ±Π»Π°ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ.
5. Π£ΡΠΈΠ»ΠΈΡΠ° `Visual VM`. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΎΠ±Π»Π°ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ.
6. Π£Π΄Π°Π»ΡΠ½Π½ΡΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ Java.
---
## ΠΠ°ΠΊ Π·Π°ΠΏΡΡΡΠΈΡΡ?
```bash
docker compose up # Setup PostgreSQL database
npm install # Install webpack
npm run build # Run webpack
./gradlew flywayMigrate # Database migrations
./gradlew flywayInfo # Check everything is OK
./gradlew test # Run tests
./gradlew build # Build .war
```
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π·Π°Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ `build/libs/mispi-4-1.0-SNAPSHOT.war` Π² WildFly.
Π ΡΠ»ΡΡΠ°Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΡΡΡΠ΄Π½ΠΎΡΡΠ΅ΠΉ Ρ Helios'ΠΎΠΌ ΠΈΠ»ΠΈ ΡΠ±ΠΎΡΠΊΠΎΠΉ HttpUnit, ΠΏΡΠΎΡΠΈΡΠ°ΠΉ [HELIOS_GUIDE](./guides/HELIOS_GUIDE.md) ΠΈ [HTTP_UNIT_GUIDE](./guides/HTTP_UNIT_GUIDE.md).
## ΠΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ
| Π‘ΡΡΠ»ΠΊΠ° | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|----------------------------------------------------------------------------------------------------------------------|---------------------------------------|
| [docs.oracle.com/.../jconsole.html](https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html) | ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ JConsole |
| https://visualvm.github.io/gettingstarted.html | ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ VisualVM |
| https://habr.com/ru/companies/timeweb/articles/719434/ | ΠΠ½Π°Π»ΠΈΠ· Π΄Π°ΠΌΠΏΠ° ΠΊΡΡΠΈ Java |
| https://habr.com/ru/companies/zabbix/articles/342226/ | ΠΡΠ°ΡΠΊΠΎ ΠΏΡΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π² Java |
| https://habr.com/ru/articles/147008/ | ΠΠ°ΠΉΠ΄ ΠΏΠΎ Π·Π°ΠΏΡΡΠΊΡ JConsole ΠΈ VisualVM |
| https://www.baeldung.com/visualvm-jmx-remote | ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ VisualVM |
| https://github.com/alex-grandson/edu/blob/main/MISPI/lab4.md | ΠΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎ ΠΠ 4 |
| [VeraKasianenko/Fundamentals_of_SE/lab4](https://github.com/VeraKasianenko/Fundamentals_of_SE/tree/main/lab4-part1) | ΠΡΠΈΠΌΠ΅Ρ ΠΠ 4 |
### ΠΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎ JMX ΠΈ ΠΏΡΠΎΡΠ΅ΠΌΡ Π΄Π»Ρ ΡΠ΄Π°ΡΠΈ ΡΠ΅ΠΎΡΠΈΠΈ:
ΠΡΠΈ ΡΠ΄Π°ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π·Π°Π΄Π°Π½ΠΈΡ Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π²Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ:
- [**Eclipse MAT**](https://eclipse.dev/mat/) -- [Π³Π°ΠΉΠ΄](https://habr.com/ru/articles/519830/);
- [**Java Flight Recorder**](https://docs.oracle.com/javacomponents/jmc-5-4/jfr-runtime-guide/about.htm) (JFR) -- [Π³Π°ΠΉΠ΄](https://habr.com/ru/companies/krista/articles/532632/).
| β | Π‘ΡΡΠ»ΠΊΠ° | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
| --- | --- | --- |
| 1. | https://docs.oracle.com/en/java/javase/21/jmx/jmx-technology-architecture.html | JMX Technology Architecture |
| 2 | https://docs.oracle.com/en/java/javase/21/docs/api/java.management/javax/management/package-summary.html | Docs for `javax.management` |
| 3 | https://en.wikipedia.org/wiki/Java_Management_Extensions#Managed_beans | Wiki MBeans |
| 4 | https://docs.oracle.com/javase/tutorial/jmx/remote/custom.html | Creating a Custom JMX Client |
| 5 | https://stackoverflow.com/questions/59696935/how-to-connect-to-jmx-for-jvm-on-local-machine-by-pid-java-9 | How to connect to JMX for JVM on local machine by PID |
| 6 | https://docs.oracle.com/cd/E19206-01/816-4178/6madjde4b/index.html | Instrumentation Using MBeans |
| 7 | https://docs.oracle.com/cd/E21764_01/web.1111/e13729/understanding.htm#JMXPG114 | Understanding JMX |
| 8 | https://docs.oracle.com/en/java/java-components/jdk-mission-control/8/user-guide/real-time-jmx-monitoring.html | JDK Mission Control User Guide: Real-time JMX Monitoring |
| 9 | https://docs.oracle.com/javase/8/docs/technotes/guides/visualvm/profiler.html | VisualVM Profiling |
ΠΡΠΎΠ΅ΠΊΡ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° ΡΡΠ»ΠΎΠ²ΠΈΡΡ
[ΠΠΈΡΠ΅Π½Π·ΠΈΠΈ MIT](https://opensource.org/license/mit/).
*ΠΠ²ΡΠΎΡΡΠΊΠΈΠ΅ ΠΏΡΠ°Π²Π° 2024 Max Barsukov*
**ΠΠΎΡΡΠ°Π²ΡΡΠ΅ Π·Π²Π΅Π·Π΄Ρ :star:, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠ»ΠΈ ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ.**