일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- CPU스케줄링
- 트리셋
- springboot
- flyway
- 컴퓨터구조
- 운영체제
- 외래키제약조건위반
- 스케일아웃
- 코테
- 구현
- 2178
- 파이널프로젝트
- JPA
- 산업은행청년인턴
- 트리맵
- BFS
- CS
- 폰켓몬
- 그래프탐색
- 산업은행it
- 해시
- Spring JPA
- fatch
- 프로그래머스
- SpringBatch
- findById
- 프로젝트
- DB replication
- 임베디드타입
- 백준
- Today
- Total
목록전체 글 (66)
나 JAVA 봐라

코테를 한번에 공부해야하는데, 자꾸 다른 일들 때문에 코테를 안하다보니 문법까지 잊어버렸다.다들 파이썬으로 코테 준비를 하지만, 파이썬 적응하는 것도 일이고, 파이썬 안 받아주는 곳도 있고, 자바 언어 자체에 더 익숙해지고 싶어서 자바 외길 인생을 걸으려고 한다... (굳이 왜...) 블로그 닉값 해야함 여튼 코테 계속 풀면서 업데이트 하려구 한당... 이제는 더 이상 물러설 길이 읎다... 형변환 // 1. toString // toString은 기본적으로 Object의 메소드임. 따라서 Wrapper클래스는 toString 사용 가능함. // 모든 Java 클래스는 Object 클래스를 상속하므로, 기본적으로 toString() 메서드를 사용할 수..

https://yejin-code.tistory.com/49 MLOps 개념 정리MLOps란?머신 러닝 (Machine Learning)과 운영(Operations)를 합친 용어로 프로덕션 환경에서 머신 러닝 모델이 지속적, 안정적으로 배포되도록 유지, 관리, 모니터링 하기 위한 문화, 방법론즉, MLOps는 머yejin-code.tistory.com (위의 내용을 먼저 읽으시는 것을 추천드립니다. ) MLOps가 왜 필요하며 어떤 요소들이 있는 지 보면서 '오 이거 좋네 ~' 라고 생각하셨다면, 이제 직접 사용 해보면 좋겠죠?(그렇다고 해주세요) 궁금하실테니 MLOps를 적용하기 위한 기술에 뭐가 있는지도 살펴보겠습니다 ! AI 플랫폼이란? AI 플랫폼은 ML 워크플로우를 자동화해줍니다. ML 워크플로..

사용 기술AWS CloudWatchAWS SNSAWS Lambda현재 진행 상황AWS CloudWatch Logs에 로그 그룹, 로그 스트림 생성로그 그룹에 대한 지표 필터 생성지표 필터에 대한 경보 생성AWS Lambda, SNS를 통해 슬랙 알람먼저 기존의 슬랙 알람은 아래와 같다. 알람을 통해 바로 로그이벤트를 확인할 수 없는 문제가 있다. 링크에 접속해도, 로그 스트림을 확인할 수 있는 링크가 아니기 때문에 에러로그를 확인할 수 없다. 연동해둔 로그 이벤트는 아래와 같다. 이제 해당 로그 이벤트를 알람을 통해 바로 확인할 수 있도록 해보겠다.1. 기존 Lambda에 Nodejs 레이어 추가Lambda에서 CloudWatch logs에 접근하기 위해 aws-sdk를 사용해야한다.이를 위해 Lambd..

AWS CloudWatch를 통해 EC2 인스턴스에 출력되는 로그를 확인하고 특정한 로그 이벤트가 생기면 이메일로 알람이 가도록 한다.사용 기술AWS CloudWatchAWS SNSAWS Lambda기본 설정되어 있는 log 확인해보기먼저 터미널에 찍히는 log를 확인한다.EC2 터미널에서 아래와 같은 명령어로 log를 확인할 수 있다.이번 프로젝트에서는 EC2 인스턴스에 Docker container를 띄웠기 때문에 아래와 같은 명령어로 확인했다.docker logs [옵션] [컨테이너명] Docker는 container에서 생성된 로그를 자동으로 저장해준다.도커에서 로그를 남기는 경로를 알기 위해 아래의 명령어를 입력한다.docker inspect 컨테이너명 엄청나게 많은 정보들이 출력되는데 그 중 ..

Spring Boot 프로젝트를 EC2에 배포하고 보니, 아직 완성 안된 기능들을 추가해야할 때 jar 파일 빌드 → image로 생성하여 docker hub에 업로드 → EC2에서 프로젝트 이미지 pull → 컨테이너 생성 및 실행…과 같이 하나하나 해줘야하는 것들이 많고 이 과정이 자동화가 된다면 서비스를 유지보수 하는 것에 있어 편리하겠다는 생각을 했다. 왜 사람들이 Github Action을 쓰는지 이해했다.GitHub Actions 동작 순서Github Repository에 프로젝트의 추가사항이나 변경사항을 push 혹은 merge한다.테스트 코드를 통과하면 push 혹은 merge가 된다.Github Actions에서 push 혹은 merge가 된 것을 확인한다.Project 빌드에 필요한 a..

현재 Spring Boot와 MySQL을 통해 로컬 환경에서 프로젝트를 진행하고 있습니다. 개발이 얼추 마무리됨에 따라, AWS에 배포를 진행하기로 했습니다.찾아보니 배포하는 방법도 다양했는데, 그 중 아래의 두 가지 방식을 고민했습니다.Spring Boot 프로젝트는 Amazon S3에 올리고, DB는 Amazon RDS를 사용하여 EC2에 연결하기Spring Boot, Mysql 둘 다 Docker Container로 EC2에 띄우기로컬 환경에서 MySQL를 도커 컨테이너로 띄워 사용 중이었기 때문에 배포도 2번 방법에 따라 Docker를 사용하기로 했습니다 !그래서 오늘은어떻게 SpringBoot 프로젝트를 Docker Image로 만들고어떻게 만든 Image를 DockerHub에 업로드하고어떻게 ..

MLOps란? 머신 러닝 (Machine Learning)과 운영(Operations)를 합친 용어로 프로덕션 환경에서 머신 러닝 모델이 지속적, 안정적으로 배포되도록 유지, 관리, 모니터링 하기 위한 문화, 방법론즉, MLOps는 머신러닝 모델 개발과 운영을 통합하여 ML 시스템을 자동으로 유지, 관리, 운영한다.엔터프라이즈 레벨에서 ML을 서비스에 구현하고자 한다면, 단순히 성능이 좋은 모델만 필요한 것이 아니다.단순히 모델 개발 하나가 아니라 그 이전의 데이터 수집, 이 후의 모델 배포 및 모니터링 등의 전 과정(AI Lifecycle)을 거쳐야 한다. 또한 이러한 시스템들이 유기적으로 돌아가야 한다. 이런 과정들을 MLOps가 포함한다. 따라서, MLOps에는 머신 러닝(ML)과 소프트웨어 개..
1장 사용자 수에 따른 규모 확장성 하나의 서버 내에 웹 앱, DB, 캐시 등이 다 있을 수 있지만, 사용자 수가 많아짐(요구 사항)에 따라 각각의 서버(웹, DB, 캐시,... 등)로 분리할 수 있다. 웹 계층스케일 업(수직적 규모 확장) vs 스케일 아웃(수평적 규모 확장)스케일 업의 한계한 대의 서버에 CPU, 메모리를 무한대로 증설하는 데에 한계가 있다. 장애에 대한 자동복구(failover), 다중화 방안 없기에 장애 발생 시 서비스가 중단된다.-> 이런 단점으로 인해, 대규모 애플리케이션 지원하는데에는 스케일 아웃 많이 씀. 로드 밸런서사용자 많을 때 부하 분산함.사용자는 로드밸런서의 공개 IP 주소로 접속(웹서버-클라이언트가 직접 연결 x) -> 로드밸런서가 사설 IP주소로 웹 서버 접속서버..
의료 CV 연구실에서 학부 연구를 진행하며, 비용을 고려하지 않고. 단순히 더 좋은 성능만을 위하는 모델은 실질적이지 않다고 생각했다. 또한 연구실 환경에서는 모델 학습 ~ 성능 평가의 모든 과정이 수동으로 진행되어 속도도 더뎌지고 가끔씩 휴먼 에러도 발생했다. 내 나름대로 수동으로 이뤄져 불편한 과정들을 자동화 했었는데 실제 기업에서는 어떤 식으로 이러한 과정(학습, 평가, 배포)을 자동화하는지 궁금했다. 실제 프로덕션에서 동작하는 모델은 어떻게 다른지 책을 통해 알아가고자 한다. 참고 ) 쉘 스크립트로 모델 학습 자동화하기 -> https://yejin-code.tistory.com/421장 머신러닝 시스템 개요머신러닝 시스템이란? : 단순히 로지스틱 회귀와 같은 ML 알고리즘만 의미하는 것이 아니라..
'자기지도학습을 통한 신장분할' 을 주제로 학부 연구 했던 내용을 정리해본다. 멀티미디어학회에 제출한 논문 링크입니다! -> 복부 CT 영상에서 직소 퍼즐 기반 자기지도학습을 통한 신장 분할 내가 한 일들(데이터 전처리, 논문 리뷰,... 등의 여러 활동을 했지만 실험 효율을 위해 했던 노력에 대해서만 작성해본다 !) 기존 실험 방식은 아래와 같다.1. 4개의 dataset 중 하나를 정한다. (각각 25%, 50%, 75%, 100% 데이터셋이 있음)2. 해당 dataset에 대해 여러 파라미터로 train을 진행한다. (lr은 0.005, 0.01 / batch_size는 8, 16, 32 -> 조합하면 총 6번의 실험)3. 각 train/test의 결과를 지정된 디렉토리에 저장한다. 처음 연구를 시..