전체 글 (143) 썸네일형 리스트형 [코테 TIL#17] 프로그래머스 푸드 파이트 대회 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/134240 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이import java.lang.StringBuilder;import java.util.Stack;class Solution { public String solution(int[] food) { StringBuilder answer = new StringBuilder(); Stack stack = new Stack(); for(int i = 1; i 정방향으로 한번 담고 그.. [코테TIL#16] 프로그래머스 가장 가까운 같은 글자 처음 풀이import java.util.ArrayList;import java.util.List;import java.util.Objects;class Solution { public int[] solution(String s) { int[] answer = new int[s.length()]; String[] str = s.split(""); String start = str[0]; answer[0] = -1; for(int i = 1; i -1; j--) { gap += 1; if(Objects.equals(str[i], str[j])) { fl.. [TIL#46] Redis 특징과 사용 이유 / 타입에 따른 명령어 정리 RedisKey - Value NoSQL Database메모리(인메모리) 상에 데이터를 저장데이터 변경이 잦은 기능을 다룰 때 많이 사용리더보드, 방문자 트래킹세션 클러스트링캐싱 NoSQL Database 언제 사용할까 ?NoSQL Database는 데이터를 저장하는 형식이 정해져 있지 않기 때문에 형태가 매우 다양하다.일관성을 포기하는 대신 확장성과 유연성을 높인다.데이터가 방대할 때 사용한다.비정형 데이터가 많을 때 사용한다. NoSQL Database 예시Redis : key - valueMongoDB : document(json)cassandra : column Family Redis 설치원래는 Redis를 Local에서 설치해서 사용했었는데 Window Local에 설치하는 건 3.xx 버.. [TIL#45] Docker 사용 이유 / 가상 머신과 비교 Docker 사용하는 이유Docker를 사용하지 않으면 Linux Server에 Java깔고, DB깔고, 버전도 맞추고.. 이런 과정이 필요하지만Application에 Docker 사용해서 배포하면 버전 신경 안 써도 되고, Java와 DB도 명령어 한 줄로 깔 수 있고 명령어 실수 날 걱정도 없고 환경을 통일 할 수 있어 매우 편하다. Docker를 언제 사용할까 ?일관된 개발 환경이 필요할 때애플리케이션을 빠르게 배포하고 싶을 때마이크로 서비스 아키텍처를 도입 할 때 → 서비스 별로 컨테이너 나누고 DB 나누면 되겠다.CI/CD 파이프 라인 구축 할 때리소스 효율성을 높이고 싶을 때쉽게 스케일링 하고 싶을 때 (수평 확장)쿠버네티스와 함께 사용하고자 할 때 Docker 주요 명칭Vloume : 컨.. [TIL#44] AWS EC2 Swap memory 설정 + 디스크 용량 증가 EC2 프리 티어를 사용하다 보니까 메모리 공간이 부족해서 Spring 서버와 MySQL을 함께 띄우면 자꾸 죽는 현상이 발생했다. 그래서 메모리 공간을 먼저 늘려주었다. A. 디스크 용량 증가(30GB까지 무료 → 바뀔 수 있으므로 공식 자료 확인하기)https://aws.amazon.com/ko/ebs/pricing/?nc1=h_ls 고성능 블록 스토리지 – Amazon EBS 요금 – Amazon Web Services시작하기 Amazon EBS를 시작하는 방법 알아보기aws.amazon.com EBS(EC2 디스크) 볼륨 수정하기EC2 > 볼륨으로 들어간 후 크기 수정하기 (30 GB까지 무료) 2. sudo reboot로 EC2 서버 재부팅 시켜주기이 작업은 시간이 좀 소요되기에 바로 .. [TIL#43] 배달 주문 플랫폼 팀 프로젝트 설계 프로젝트 설계평소에 자주 사용하는 배달 플랫폼을 만들어보기로 했다. 식당에서 음식 정보 등록 >> 사용자는 원하는 음식을 주문 >> 할당된 라이더가 음식을 배달 이러한 흐름으로 사용이 되는데 개발 기간이 2주 정도로 짧게 가져갈 예정이라 UseCaseDiagram은 생략하였다. 주요 도메인은 4가지로 설정하였다. 유저유저는 OWNER(사장님), CUSTORMER(고객), MANAGER(관리자), MASTER(마스터 관리자) 로 두었다. 권한에 따라 페이지 접근 제한을 할 예정이고, 백오피스도 개발 할 예정이다.가게지역은 광화문 근처로 한정하되 확장성 고려하여 개발 할 예정이다. 음식 카테고리별, 지역별 가게 검색 및 조회가 가능하게 구현 할 것이다. 특이한 점은 사장님들의 사용성을 고려하여 AI를 활.. [TIL#42] Spring MSA 설계 및 실습 Spring Cloud를 활용하여 MSA 아키텍처 구조 실습을 해보려고 한다. 설계 Eureka Server를 하나 띄워 Client들을 등록해주고, Gateway를 통해 요청들이 해당 Service로 가도록 설정해주었다.로드밸런싱 실습도 하기 위해 user와 product 서비스는 두개씩 띄웠다. 실습 목표로드밸런싱 설정모든 요청은 Gateway를 통해 접근하도록 설정서킷 브레이커를 사용해 장애 대응 코드 작성zipkin으로 분산 추적하여 문제 파악하도록 하기(시간이 남는다면) config server 추가 [Spring] Bean 등록하기 (@Bean vs @Component) / 같은 타입의 Bean 구분하기 (@Primary vs @Qualifier()) Bean 등록하기 1. 클래스를 Bean으로 등록하기@Component 사용@Componentpublic class MyService { public void serve() { System.out.println("Service is serving..."); }} @Component를 사용하면 Spring의 @ComponentScan에 의해 자동으로 스캔되고, 클래스를 인스턴스화하여 Spring IoC 컨테이너에 등록된다. 이후 다른 곳에서 의존성 주입을 통해 해당 인스턴스를 사용할 수 있다.(예시 : @Service, @Repository 등) 2. 메소드를 Bean으로 등록하기@Bean 사용@Configurationpublic class AppConfig { @Bean .. 이전 1 2 3 4 ··· 18 다음