본문 바로가기

분류 전체보기348

[토스, toss] 2023 토스 NEXT 개발자 챌린지 서버 직군 코딩테스트 후기 시험 정보 일시 : 2023. 07. 08. (토) 오후 2시 (140분 진행) 장소 : 온라인 코딩테스트 환경 : 프로그래머스 IDE 코딩테스트 문제 프로그래밍 7문제 / 서술형 5문제 프로그래밍 백준 실버 1~3 정도의 난이도, 고민이 필요하다 싶은 정도는 프로그래머스 level3 정도 기본적인 알고리즘 지식이 있다면 충분히 다 풀 수 있는 문제들이였다. 시간이 충분하다면 다 풀 수 있지만 토스 코딩테스트 시간을 고려했을 때 문제를 보고 바로 코드를 작성하지 못하면 시간 부족.. 서술형 서버 개발/운영하면서 발생할 수 있는 문제 기본적인 CS 지식을 가지고 있는지, 이를 실무에 활용할 수 있는가를 확인하는 문제 트래픽 / DB / 아키텍처 등에 대한 이해와 문제 해결 능력 요구 최종 후기 나는 프로그.. 2023. 7. 12.
아파치와 Nginx 이해, 아파치 vs Nginx 비교와 차이점 최근 면접 준비 및 개발 공부를 하면서 Nginx에 대한 내용을 자주 접하게 되었다. 지난번에 웹 서버와 WAS의 차이에 대해 공부를 하면서 아파치와 Nginx가 웹 서버의 종류라는 것은 알게 되었지만 구체적으로 어떤 차이가 있는지에 대해서는 잘 알지 못했다. 이번 기회에 아파치와 Nginx가 나타나게 된 배경, 이점에 대해 정리해보고자 한다. 웹 서버와 WAS의 차이에 개념이 부족한 분들은 아래의 게시글을 참고하면 좋을 것 같다. https://hyeonwook98.tistory.com/entry/10%EB%B6%84-%ED%85%8C%EC%BD%94%ED%86%A1-%EC%A0%95%EB%A6%AC-%EC%9B%B9-%EC%84%9C%EB%B2%84%EC%99%80-WAS%EC%9D%98-%EC%B0.. 2023. 6. 27.
[10분 테코톡 정리] 인텔리제이 디버깅(Intellij Debugging) 디버깅(Debugging) 디버깅이란 프로그래밍 과정에서 발생한 오류를 파악하고 수정하는 일련의 과정을 말한다. 디버깅의 방법은 딱 정해져 있다고 볼 수 없다. 프로그램이 동작하는 flow에서 내가 확인하고 싶은 부분에 print문으로 하나씩 확인해가며 오류를 제어해 나갈 수 있다. 하지만 코드나 로직이 복잡해지면 어디서 문제가 발생했는지? 왜 문제가 발생한 것인지? 파악하기 힘들다. 이에 인텔리제이에서는 사용자가 편리하게 디버깅을 할 수 있도록 기능을 제공한다. 인텔리제이에서 어떠한 디버깅 기능을 제공하는지 하나씩 살펴보자. Breaking Point 인텔리제이에서 디버깅을 시작할 때 가장 기본은 Breaking Point를 설정하는 것이다. 이는 멈출 지점을 선택하는 것을 말한다. move라는 로직 .. 2023. 6. 23.
[Redis] Redis 해킹?, Key사라짐 현상, Backup데이터 생성? 서론 진행중인 프로젝트에서 AccessToken, RefreshToken을 이용한 로그인 방식을 구현하고 있었다. RefreshToken을 Mysql에 저장하여 구현한 적은 있지만, 이 경우 유효기간이 끝난 RefreshToken를 별도의 스케줄러를 통해서 관리해주어야 하는 불편함이 존재했다. Redis에는 TTL(Time To Live) 기능이 있어 특정 시간이 지나면 자동으로 해당 데이터가 지워지는 것이 가능하기 때문에 Redis를 활용해 RefreshToken을 구현하고자 하였다. redis는 로컬 환경이 아닌 EC2서버의 도커 환경에서 docker-compose를 이용해 프로젝트 어플리케이션과 함께 실행되도록 CICD를 구축한 상태이며, 테스트를 위해 RefreshToken의 TTL을 5분정도로 .. 2023. 6. 14.
[10분 테코톡 정리] Redis란? Redis이해하기 레디스(Redis)란? 레디스란 Redis(Remote dictionart server)를 의미하며, '외부에 있는 딕셔너리(key-value 쌍) 자료구조를 가지는 서버'이다. 그래서 레디스는 어디에 쓰이는가?? 다음의 역할을 한다. Database Cache Message broker In-memort Data Structure Store Supports rich data structure Cache란? 캐시란 나중의 요청에 대한 결과를 미리 저장했다가 빠르게 사용하는 것을 말한다. 그렇다면 해당 결과들은 어디에 저장하는 것이 빠를까?? 이를 이해하기 위해서는 메모리 계층 구조에 대해 알아야 한다. 그림에서와 같이 계층에 따라 장단점을 보이는 것을 알 수 있다. 기본적으로, 데이터베이스 내 데이터들은.. 2023. 6. 13.