์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- nGrinder
- docker ps -a
- docker
- docker-compose kafka
- Codedeploy ์ค๋ฅ
- AWS Certified Solutions Architect - Associate
- JPA
- ์คํํ๋ ๋ฏธ์ค
- prod docker-compose
- s3 ์ด๋ฏธ์ง ๋ค์ด๋ก๋
- ์ ํจ์ค ๋น๋ ์ค๋ฅ
- ๋ค์ค ์ปจํ ์ด๋
- ํ๋ก๊ทธ๋๋จธ์ค ์ปฌ๋ฌ๋ง๋ถ
- ํ๋ก๊ทธ๋๋จธ์ค
- s3 ์ด๋ฏธ์ง ์ ์ฅ
- s3 log ์ ์ฅ
- ์๋ฐ
- aws ์ฟ ํฐ
- redis ์กฐํ
- ํ์ดํผ๋ฐ์ด์
- private subnet ec2 ๋ก์ปฌ ์ ์
- aws saa ํฉ๊ฒฉ
- jvm ๋ฐ๋ฐ๋ฅ๊น์ง ํํค์น๊ธฐ
- ์ ํจ์ค ์ค์ผ์ค๋ฌ
- Entity
- ํ๋ก๊ทธ๋๋จธ์ค ํฉ์นํ์์๊ธ
- redis ํ ์คํธ์ฝ๋
- Kafka
- ์๋ฒ ํฐ์ง๋ ๋์ปค ์ฌ์คํ
- docker compose
- Today
- Total
๋ชฉ๋ก์ ์ฒด ๊ธ (120)
๐๐ข๐๐ โ๐๐๐ ๐๐๐ก๐๐ ๐๐๐๐โง

๊ฐ๋น์์์ ๋๋ฉ์ธ์ ๊ตฌ๋งคํ ํ, AWS S3์ ์ ์ ์น ํธ์คํ ์ฉ ๋ฒํท์ ์์ฑํฉ๋๋ค.์ด๋ ๋ฒํท ์ด๋ฆ์ ๊ตฌ๋งคํ ๋๋ฉ์ธ ์ด๋ฆ๊ณผ ์ ํํ ์ผ์นํ๋๋ก ์ค์ ํด์ผ ํฉ๋๋ค. ์ดํ ๋ง๋ ๋ฒํท -> ๊ถํ ํญ์ ๊ฐ์ ์๋ ๊ถํ์ ์ถ๊ฐํฉ๋๋ค.{ "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-bucket-name/*" } ]} ์ด์ Route 53 ์๋น์ค๋ก ์ด๋ํ 'ํธ์คํ ์์ญ'์ ํด๋ฆญํ ํ, '๋ ์ฝ๋ ์์ฑ' ๋ฒํผ์ ๋๋ฌ์ค..

์ด์ ๊ธ์์ Lambda๋ฅผ ํ์ฉํ์ฌ ์ด๋ฏธ์ง๋ฅผ ๋ฆฌ์ฌ์ด์ง ํ ์ ์ฅํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ฑํ์ต๋๋ค.https://ryusunny.tistory.com/153 [AWS] S3 + Lambda ๋ฅผ ํตํ ์ด๋ฏธ์ง ๋ฆฌ์ฌ์ด์ง (macOS sharp ๋ชจ๋ ์ค๋ฅ, ๋ฌดํ ๋ฆฌ์ฌ์ด์ง ์ค๋ฅ)๋ฒํท ์์ฑ, ๋๋ค ์์ฑ, IAM ์ญํ ์์ฑ์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ค๋ฅธ ์ฌ์ดํธ์์ ๋ ์ ์ค๋ช ๋์ด ์์ผ๋ฏ๋ก, ์ฐธ๊ณ ํ์๋ฉด ๋๋ค.https://oliveyoung.tech/2023-05-19/aws-lambda-resize/ AWS Lambda Image Resize ๋์ ๊ธฐ | ์ฌ๋ฆฌryusunny.tistory.com ํ์ง๋ง ์ด ๋ฐฉ๋ฒ์๋ ๋ ๊ฐ์ง ๋ฌธ์ ์ ์ด ์กด์ฌํฉ๋๋ค./origin ๊ฒฝ๋ก์ ์๋ณธ ์ด๋ฏธ์ง, /resized ๊ฒฝ๋ก์ ๋ฆฌ์ฌ์ด์ฆ๋ ์ด๋ฏธ์ง๊ฐ S3์ ..

Elasticsearch๋?Elasticsearch๋ ๋์ฉ๋ ๋ฐ์ดํฐ์์ ๋น ๋ฅด๊ณ ํจ์จ์ ์ธ ๊ฒ์์ ์ํํ ์ ์๋๋ก ์ค๊ณ๋ ์คํ ์์ค ๋ถ์ฐ ๊ฒ์ ์์ง์ ๋๋ค. JSON ๋ฌธ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ฒ์ํ๋ฉฐ, ์ญ์์ธ(Inverted Index) ๋ฐฉ์์ ์ฌ์ฉํด ๋น ๋ฅธ ๊ฒ์์ ์ง์ํฉ๋๋ค. Elasticsearch์ ์ฃผ์ ํน์ง์ ๋ฌธ ๊ฒ์(Full Text Search)ํํ์ ๋ถ์์ ํตํด ํ ์คํธ ๊ฒ์์ ์ต์ ํํ๊ณ ๋์์ด ๋ฐ ์ ์์ด ๊ฒ์์ ์ง์ํฉ๋๋ค.์ค์๊ฐ ๊ฒ์๋๋์ ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌ ๋ฐ ๊ฒ์ํ ์ ์์ต๋๋ค.๋ถ์ฐ ์์คํ ์ฌ๋ฌ ๊ฐ์ ๋ ธ๋๋ก ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ฑํ์ฌ ํ์ฅ์ฑ์ ์ ๊ณตํฉ๋๋ค.RESTful API ์ง์GET, POST, DELETE ๋ฑ์ REST API๋ฅผ ํ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์์ฝ๊ฒ CRUD(์์ฑ, ์กฐํ, ์์ , ์ญ์ )ํ ..

Docker Compose ํ์ผ์ Kibana ์ค์ ์ถ๊ฐํฉ๋๋ค.version: "3.8"services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:8.10.0 container_name: elasticsearch platform: linux/arm64 ports: - "9200:9200" environment: - discovery.type=single-node - xpack.security.enabled=false - ES_JAVA_OPTS=-Xms256m -Xmx256m # 256MB๋ก ์ต์ ์ค์ , ํ๋ก๋์ ํ๊ฒฝ์์๋ ์ฌ์ค์ ํ์ networks: ..

KibanaElasticsearch์ ์์ธ๋ ๋ฐ์ดํฐ ๊ธฐ๋ฐ์๊ฐํ ๋ฐ ๊ฒ์ ๊ธฐ๋ฅ ์ ๊ณต๋ฌด๋ฃ ์คํ ์์ค์ค๋ฌด์์๋ ๋ก๊ทธ ํ๋ซํผ ์ฉ๋ ์ฌ์ฉKibana ๊ธฐ๋ฅ• ๋ก๊น ๊ณผ ๋ก๊ทธ ๋ถ์• ์ธํ๋ผ ๋ฉํธ๋ฆญ๊ณผ ์ปจํ ์ด๋ ๋ชจ๋ํฐ๋ง(์์คํ ๊ด๋ฆฌ ๋ชจ๋ํฐ๋ง)• ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง(APM)• ์์น ๊ธฐ๋ฐ ์ ๋ณด ๋ฐ์ดํฐ ๋ถ์๊ณผ ์๊ฐํ• ๋ณด์ ๋ถ์• ๋น์ฆ๋์ค ๋ถ์• Elastic Stack ์ธ์คํด์ค๋ฅผ ๋ชจ๋ํฐ๋ง,๊ด๋ฆฌ Kibana์ ์๊ฐํ ๊ธฐ๋ฅ• Discover - ๋ฐ์ดํฐ ์กฐํ, ํํฐ, ๋ถ์• Dashboard - ๋ค์ํ ๊ทธ๋ํ๋ฅผ ํ์ฉํ ์๊ฐํ• Canvas - ํ๋ฆฌ์ ํ ์ด์ ์ฒ๋ผ ๊ตฌ์ฑ• Maps - ์ง๋์ ์์น ๊ธฐ๋ฐ ๋ฐ์ดํฐ ํํ• Graph - ๋ฐ์ดํฐ๋ฅผ ๊ด๊ณ ์งํฅ์ ์ผ๋ก ์๊ฐํ Discover• ElasticSearch ์ ์ ์ฌ๋ ๋ฐ์ดํฐ๋ฅผ ํ์ธ..

Logback.xml ํ์ผ์ ํ์ฉํ์ฌ Logstash๋ฅผ ์ค์ ํ๊ณ , ์ด๋ฅผ ํตํด ๋ก๊ทธ ๋ฐ์ดํฐ๋ฅผ Elasticsearch์ ์ ์ฅํ๋ ค๊ณ ํฉ๋๋ค. ์ด ๊ธ์์๋ ์ด๋ฅผ ์ํ ํ์ํ ์ค์ ํ์ผ๋ค์ ๋ํด ์ค๋ช ํ๋ ค๊ณ ํฉ๋๋ค. 1. Docker Compose ์ค์ ์ ElasticSearch ๋ฐ Logstash ์ถ๊ฐdocker-compose.ymlservices: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:8.10.0 container_name: elasticsearch ports: - "9200:9200" environment: - discovery.type=single-node - xpack.s..

๋ก๊ทธ(Log)์์คํ ์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ฐ์ํ ์ด๋ฒคํธ, ๋์, ์ํ ๋ฑ์ ๊ธฐ๋กํ ์ ๋ณด์ฃผ๋ก ๋๋ฒ๊น , ๋ชจ๋ํฐ๋ง, ๋ฌธ์ ํด๊ฒฐ, ์ฑ๋ฅ ๋ถ์ ๋ฑ์ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.๋ก๊ทธ์ ์ฃผ์ ๋ชฉ์ ๋๋ฒ๊น : ์์คํ ์์ ๋ฐ์ํ ๋ฌธ์ ๋ฅผ ์ถ์ ํ๊ณ , ์ฝ๋์ ํ๋ฆ์ ํ์ ํ๊ธฐ ์ํด ์ฌ์ฉ.๋ชจ๋ํฐ๋ง: ์์คํ ์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ์ ์ฑ๋ฅ์ ์ค์๊ฐ์ผ๋ก ๊ด์ฐฐ.์๋ฌ ์ถ์ : ๋ฐ์ํ ์ค๋ฅ๋ฅผ ๊ธฐ๋กํ๊ณ , ๋ฌธ์ ์ ์์ธ์ ์ฐพ์ ์์ .์ฑ๋ฅ ๋ถ์: ์์คํ ์ฑ๋ฅ์ ๋ถ์ํ์ฌ ์ต์ ํ ๋ฐ ๊ฐ์ ํ ์ ์๋ ๋ถ๋ถ์ ์ฐพ์๋. ๋ก๊ทธ ๋ ๋ฒจ์ ์ฃผ์ ์ข ๋ฅTRACE์ค๋ช : ๊ฐ์ฅ ๋ฎ์ ์์ค์ ๋ก๊ทธ ๋ ๋ฒจ์ ๋๋ค. ๋งค์ฐ ์ธ๋ฐํ ์ ๋ณด๋ฅผ ๊ธฐ๋กํฉ๋๋ค. ์ฃผ๋ก ์ฝ๋ ์คํ์ ์ธ๋ถ ์ฌํญ, ๋ณ์ ๊ฐ, ๋ฉ์๋ ํธ์ถ ๋ฑ์ ์ ๋ณด๋ฅผ ํฌํจํฉ๋๋ค.์ฉ๋: ๋๋ฒ๊น ํ ๋ ์ฝ๋ ํ๋ฆ์ ์ถ์ ํ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค.์์: ๋ฉ์๋..
๋ฉํฐ์ฐ๋ ๋ ํ์ฉ ์ ๋ก๊ทธ ํ์์ด์ ์๋น์ค์์ ์ฌ๋ฌ ์์ฒญ์ด ๋์์ ๋ค์ด์ฌ ๋, ๋ก๊ทธ๊ฐ ์์ ์์ด ์ฒ๋ฆฌ๋๊ณ ์์ฌ ์์ด๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ด๋ก ์ธํด ๋ก๊ทธ ์ถ์ ์ด ์ด๋ ค์์ง๊ณ , ๋ฌธ์ ๋ฅผ ๋๋ฒ๊น ํ๋ ๋ฐ ๋ถํธํจ์ ์ด๋ํ ์ ์์ต๋๋ค.๋ก๊ทธ ์์: ์์ฒญ์ ์์ฐจ์ ์ผ๋ก ๋ค์ด์ค์ง๋ง, ์ฒ๋ฆฌ ๋์ค์๋ ๋ก๊ทธ๊ฐ ์์ฌ์ ์์ด๊ฒ ๋ฉ๋๋ค.์ฐ๋ ๋ ์ ๋ณด: ๋ก๊ทธ๋ ์๊ฐ ์์ ์ฐ๋ ๋ ์ ๋ณด๋ฅผ ํ์ํ์ง๋ง, ๊ฐ์ ์ฐ๋ ๋๊ฐ ์ฌ๋ฌ ๋ฒ ์ฌ์ฌ์ฉ๋๊ธฐ ๋๋ฌธ์ ํน์ ์์ฒญ์ ํ๋ฆ์ ์ถ์ ํ๊ธฐ ์ด๋ ต์ต๋๋ค. ํด๊ฒฐ ๋ฐฉ์์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด MDC๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ ์์ฒญ์ ๊ณ ์ ๊ฐ์ ํ ๋นํ๊ณ , ์ด๋ฅผ ๋ก๊ทธ์ ์ถ๋ ฅํจ์ผ๋ก์จ ๋ก๊ทธ๋ฅผ ๊ตฌ์ฒด์ ์ผ๋ก ์ถ์ ํ ์ ์์ต๋๋ค.Interceptor, Filter, AOP ๋ฑ ๋ค์ํ ๋ฐฉ๋ฒ์ผ๋ก MDC๋ฅผ ์ ์ฉํ ์ ์์ง๋ง, ๋ณธ ์์ ์์๋ AOP..