Skip to content

MIL-LO/anything

Repository files navigation

๐Ÿš€ Anything Lab

"๊ถ๊ธˆํ•œ ๋ชจ๋“  ๊ฒƒ์„ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐ„!"
๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ๊ณผ ๊ธฐ์ˆ ์„ ์‹คํ—˜ํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•˜๊ณ  ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์‹œ๋„๋ฅผ ํ•ด๋ณผ ์ˆ˜ ์žˆ๋Š” Sandbox Repository์ž…๋‹ˆ๋‹ค.


๐Ÿ›  ๊ฐœ์š”

Anything Repository๋Š” ํŠน์ • ๋ชฉ์  ์—†์ด ๋‹ค์–‘ํ•œ ๊ธฐ์ˆ , ๊ธฐ๋Šฅ, API, ์„ฑ๋Šฅ ๋“ฑ์„ ์ž์œ ๋กญ๊ฒŒ ํ…Œ์ŠคํŠธํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค.
ํ•„์š”์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ์™ธ๋ถ€ API, ๊ธฐํƒ€ ๊ธฐ์ˆ ๋“ค์„ ์—ฐ๋™ํ•˜์—ฌ ์‹คํ—˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

[Click] ๐Ÿ“Œ ํ•ด๋‹น Repository๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- Spring Boot ๊ธฐ๋ฐ˜ API ๊ฐœ๋ฐœ ๋ฐ ์‹คํ—˜
- ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(MySQL, PostgreSQL, Redis ๋“ฑ) ์—ฐ๊ฒฐ ํ…Œ์ŠคํŠธ
- OpenAI API์™€ ๊ฐ™์€ AI ๊ด€๋ จ ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ
- GitHub Actions ๋ฐ CI/CD ํŒŒ์ดํ”„๋ผ์ธ ์‹คํ—˜
- ์ƒˆ๋กœ์šด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ ๋„์ž… ๋ฐ ๊ฒ€์ฆ
- RESTful API & GraphQL API ํ…Œ์ŠคํŠธ
- ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ ๋ฐ ๋กœ๊น…/๋ชจ๋‹ˆํ„ฐ๋ง ์‹คํ—˜
- ๋“ฑ๋“ฑ ๊ทธ๊ฒŒ ๋ญ๋“  ์–ด๋–ค ๊ฒƒ์ด๋“ 

๐Ÿ‘€ Grafana Monitoring

Grafana Dashboard List

1. Spring Boot 3x Statistics ๋Œ€์‹œ๋ณด๋“œ

Micrometer๋ฅผ ํ†ตํ•ด ์ˆ˜์ง‘๋œ Prometheus ๋ฉ”ํŠธ๋ฆญ์„ ํ™œ์šฉํ•˜์—ฌ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ „๋ฐ˜์ ์ธ ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋จ

์ฃผ์š” ๊ธฐ๋Šฅ

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ „๋ฐ˜์ ์ธ ์ƒํƒœ ๋ชจ๋‹ˆํ„ฐ๋ง
  • HTTP ์š”์ฒญ ๋ฐ ์‘๋‹ต ์‹œ๊ฐ„ ๋ถ„์„
  • JVM ๋ฉ”ํŠธ๋ฆญ ๋ชจ๋‹ˆํ„ฐ๋ง
  • ๋Œ€์‹œ๋ณด๋“œ ID: 19004

์ ์šฉ

Spring Boot 3x Statistics

2. Spring Boot HTTP (3.x) ๋Œ€์‹œ๋ณด๋“œ

Spring Boot ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ HTTP ์š”์ฒญ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋ฉฐ, Spring Boot Actuator๋ฅผ ํ†ตํ•ด ๋…ธ์ถœ๋œ ๋ฉ”ํŠธ๋ฆญ์„ ํ™œ์šฉ

์ฃผ์š” ๊ธฐ๋Šฅ

  • HTTP ์š”์ฒญ ์ƒํƒœ ์ฝ”๋“œ๋ณ„ ๋ชจ๋‹ˆํ„ฐ๋ง (20x, 4x0k, 5xox ๋“ฑ)
  • ์š”์ฒญ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„ ๋ถ„์„
  • ๋Œ€์‹œ๋ณด๋“œ ID: 21308

์ ์šฉ

Spring Boot HTTP (3.x) ๋Œ€์‹œ๋ณด๋“œ

3. JVM SpringBoot3 ๋Œ€์‹œ๋ณด๋“œ (Prometheus Operator์šฉ)

Java Virtual Machine (JVM)์˜ ์„ฑ๋Šฅ ๋ฉ”ํŠธ๋ฆญ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ธฐ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์œผ ๋ฉฐ, Prometheus Operator์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ

์ฃผ์š” ๊ธฐ๋Šฅ:

  • JVM ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ ๋ชจ๋‹ˆํ„ฐ๋ง
  • Garbage Collection(GC) ํ™œ๋™ ์ถ”์ 
  • ์Šค๋ ˆ๋“œ ๋ฐ ํด๋ž˜์Šค ๋กœ๋”ฉ ์ •๋ณด ์ œ๊ณต
  • ๋Œ€์‹œ๋ณด๋“œ ID: 22108

์ ์šฉ

JVM SpringBoot3

์˜ฌ๋ฐ”๋ฅธ ์‹คํ–‰ ๋ช…๋ น์–ด

  • Docker Compose v1 (๊ตฌ๋ฒ„์ „)
    docker-compose up -d --build
  • Docker Compose v2 ์ด์ƒ (ํ˜„์žฌ ํ‘œ์ค€)
    docker compose up -d --build

์ถ”ํ›„ ๋ณด์•ˆ์„ ์œ„ํ•œ ํ•„์ˆ˜ ์ ์šฉ ๋ฆฌ์ŠคํŠธ

Spring Boot์˜ Spring Security

  • actuator/prometheus ์—”๋“œํฌ์ธํŠธ ๋ณดํ˜ธ
  • hasRole์ ์šฉ ํ•„์š”
  • ์ ‘์† ์ œํ•œ IP๋ฆฌ์ŠคํŠธ ์ ์šฉ ํ•„์š”

Prometheus ์ž์ฒด ๋ณดํ˜ธ

  • Nginx ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ ์ถ”๊ฐ€
  • Prometheus ์›น UI(http://localhost:9090/graph ๋“ฑ)์— ์ธ์ฆ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ฐฉํ™”๋ฒฝ์„ ์„ค์ •.

Docker Network ๋‚ด๋ถ€์—์„œ๋งŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜๋„๋ก ๋ณ€๊ฒฝ

  • Prometheus์™€ Spring Boot๋ฅผ ๊ฐ™์€ Docker ๋„คํŠธ์›Œํฌ ์•ˆ์— ๋‘๊ณ , ๋‚ด๋ถ€ ๋„คํŠธ์›Œํฌ์—์„œ๋งŒ ํ†ต์‹ ํ•˜๋„๋ก ๋ณ€๊ฒฝ.

Releases

No releases published

Packages

No packages published

Languages