일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준#boj#12755
- 백준#BOJ#12865#평범한배낭
- 백준#BOJ#2615#오목
- 백준#BOJ#8012#한동이는영업사원
- 백준#boj#16932#모양만들기
- 백준#BOJ#14501#퇴사#브루트포스
- 백준#BOJ#1939#중량제한
- Today
- Total
목록전체 글 (248)
순간을 성실히, 화려함보단 꾸준함을
안녕하세요. 4주차 OSS 과제를 포스팅 해보려고 합니다. 과제 내용- echo2 123 이라고 명령어를 입력하면 echo2_123 이런식으로 출력이 되게끔 명령어를 만들어보세요. - 다음 구조체 함수들을 참고하세요sdssdscatfmtsdsemptyaddReplyBulkSds해설먼저 sds 가 대체 무엇일까요???http://www.redisgate.com/redis/configuration/internal_string.php Redis STRINGS Data Structure www.redisgate.com해당 링크에 자세하게 잘 나와있는데요. 간략하게 말씀드리면 문자열 처리를 위한 라이브러리라고 생각하시면 될 것 같습니다.typedef char *sds;/* Note: sdshdr5 is never..
안녕하세요.오늘은 그동안 진행했었던 토이 프로젝트를 정리하면서 어떻게 배포했는지에 대해 적어보려고 합니다. docker-compose 를 활용한 개발환경 편리하게 세팅하기가장 처음으로 어떻게 개발환경을 좀 더 편리하게 세팅할 수 있을지에 대해 고민하였습니다. docker-compose 를 활용해서 명령어 하나로만 입력하면 따로 세팅해줄 필요없이 해주었는데 이 방법은 로컬 컴퓨터에 반드시 docker desktop 이 설치되어 있어야 한다는 단점이 존재하는 것 같습니다(mac, windows 기준)그러나 이런 단점때문에 포기하기에는 너무나도 편리하여 결국 docker-compose 를 활용하기로 의견이 모아졌었습니다.//Dockerfile# Use the official OpenJDK base imageF..
안녕하세요.오랜만에 블로그 글을 포스팅 합니다. 현생에 치이고 제가 요즘에 개발 외적인 취미활동을 가졌습니다.일상이 반복적이고 스스로 심적으로 많이 지쳤다는 것을 느끼고 이를 탈피해보려고 노력 중입니다.그래서 블로그에 잠시 관심을 꺼둔 상태로 지내고 있는데요. 오늘은 '오픈소스컨트리뷰션' 이라는 프로그램에 참여하여 멘토님이 내주신 과제에 대해 포스팅을 하려고 합니다. 주제는 '나만의 Redis Command' 만들어 보기 입니다. 먼저 Redis 오픈소스는 버전 7.4 부터 상업적인 목적으로 사용하려면 계약을 따로 체결해야 합니다.이 때문에 리눅스 재단이 Redis 의 대체제로 기존 소스를 fork 해 valkey 라는 오픈소스를 따로 개발한다고 합니다.https://news.hada.io/topic?i..
안녕하세요. 정말 오랜만에 글을 작성합니다. 글또 9기에 참여를 하였지만,,,,,,글을 꾸준하게 작성하지 못해 이번 기수에는 실패한 것 같네요 ㅠㅠㅠㅠ 그럼에도 불구하고 글또와 별개로 토이 프로젝트를 마무리한 경험을 토대로 글을 작성해 보려고 합니다. 2024년 2월 날짜로 토이 프로젝트를 마무리 하였습니다. 이 프로젝트를 통해서 성과(?)는 아니지만 학습하고 적용했던 것들을 나열해보도록 하겠습니다. 1. java + spring boot + jpa + querydsl 조합으로 개발 진행 저는 현재 정통 대기업에서 sm (운영직무) 를 수행하고 있습니다. java 와 oracle database 를 다루고 있어 아무래도 java 를 기반으로 개발할 수 있는 spring boot 프래임워크를 선택하였습니다..
안녕하세요. 오늘은 대용량 데이터 관리에 대한 글을 작성해보려고 합니다. 개발자분들이 운영하고 유지보수 하고 있는 일을 수행하고 있다면 시간이 지남에 따라 데이터베이스에 데이터들은 쌓이게 될 것이고 이는 용량이 커짐을 의미합니다. 당연히 과거에는 데이터를 조회하는 시간이 빨랐음에도 데이터가 쌓이게 되면 느려지게 되겠죠. 또한, 한계가 있는 물리 저장공간 특성상 용량이 커지게 되면 이를 감당할 수 있는 스팩이 부족해집니다. 결국은 조회를 더 빠르게 수행할 수 있도록 SQL 튜닝을 실행하거나 많은 데이터들이 저장되어있는 공간을 나눈다거나 하는 방법들이 필요하게 될텐데 오늘은 이를 한번 다뤄보도록 하겠습니다. 크게 샤딩이라는 기법과 파티셔닝 기법이 있습니다. 샤딩 대량의 DB 데이터를 다른 물리 시스템에 분할..
안녕하세요. 오늘은 지난 1년동안 회고를 통해 스스로를 되돌아보는 시간을 가지려고 합니다. 그냥 개인적으로 메모를 하거나 생각만으로 그칠 수 있겠지만, 블로그 글을 통해 많은 분들에게 공유하고 싶고 조금이나마 재미를 느끼셨으면 하는 바람으로 글을 적어보려고 합니다. 키워드를 기반으로 1년동안 있었던 일들을 이야기 해보도록 하겠습니다. 1. 엔지니어로써 난 어느정도 성장했는지? 앞으로의 계획은? 1년 9개월이란 시간동안 현재 직장에서 일을 하고 있습니다. 올해는 이직없이(ㅋㅋㅋ) 1년이라는 시간을 꽉 채웠습니다. 그래서 어땠냐??? 라고 물으시면 뭐 나름(?) 보람찼다면 보람찬 아쉬웠다면 아쉬웠던 시간을 보냈던 것 같습니다. 일을 하면서 기술적으로는 원하던 원하지 않던 SQL 을 사용하는데 익숙해졌고, s..
안녕하세요. 오늘은 글또 9기 2번째 글을 적으려고 합니다. 주제는 Dockerfile 과 docker-compose 를 활용한 개발환경 세팅하기 입니다. docker-compose 가 무엇인지도 몰랐지만 이번 기회에 공부도 하면서 직접 토이 프로젝트에 적용해보았습니다. 반드시 docker 가 로컬 컴퓨터에 설치가 되어 있어야 합니다. windows, mac 같은 경우는 docker desktop 을 설치하면 docker compose 를 자동으로 사용할 수 있습니다. 배경 왜 갑자기 docker-compose 를 사용하게 된걸까요?? 토이프로젝트 api 들이 개발이 어느정도 진행 된 상황에서 aws ec2 에 배포를 할 예정입니다. 배포환경에서는 db 를 mysql 을 사용할 예정인데, 로컬환경에서는 ..
글또 9기 첫번째 글입니다. 동시성 문제란 무엇일까요? 하나의 api 에 동시에 요청이 들어올때 데이터의 정합성이 보장받지 못하는 문제를 뜻합니다. 그럼 꼭 완벽하게 동시에 요청이 들어와야 하는 걸까요???그렇지는 않습니다. 첫번째 요청을 처리하기 전 두번째 요청이 시작되면 이런 현상도 동시성 문제라고 간주합니다. 결국 데이터의 정합성이 보장받지 못하게 되는 거니까요. 데이터의 정합성이라는 게 뭘까요? 보통 트랜잭션에 관하여 공부하게 되면 나오는 개념인데 정의는 이와 같습니다. '데이터베이스는 항상 일관된 상태를 유지해야 한다' 무슨 뜻일까요? 예를 들어 2개의 계좌가 있다고 가정해보겠습니다. 계좌 A : 10000원 계좌 B : 5000원 이때 계좌 A->계좌B 로 2000원을 이체합니다. 단계1 : ..
안녕하세요. 폭발토끼입니다. 오늘은 ConstraintValidator 를 사용한 경험에 대해서 공유하려고 글을 작성했습니다. 사실 구글에 너무나도 많은 블로그글들이 많아서 써야할까 고민했지만, 블로그에 기록해두면 앞으로 개발하면서 비슷한 문제를 마주했을때 빠르게 해결할 수 있을 것 같아서 이렇게 기록을 남깁니다. 배경 request dto 객체들에 대해서 validation 체크를 해줄때는 @Valid 어노테이션을 사용해서 편하게 체킹할 수 있습니다. 그러나 안타깝게 file class 들에 대해서는 마땅히 체킹할 수 있는 기능이 없습니다. @Valid 의 @NotNull 은 말 그대로 null 인 경우 체킹을 하지만 file 의 경우 아무값이 없을때 null 이 아닌 빈값으로 값이 들어와 필터링을 해..
안녕하세요! 글또 활동을 마치고 처음 적는 글입니다 오늘은 아무리 구글링해도 알 수 없어서 제가 직접 하나하나 고생하면서 알아낸 Tip(?) 을 ㅋㅋㅋㅋㅋ 적어보려고 합니다. 제목 처럼 인텔리제이에서 .http 파일을 사용하여 http 요청을 보낼 수 있습니다. IntelliJ의 .http를 사용해 Postman 대체하기 (tistory.com) IntelliJ의 .http를 사용해 Postman 대체하기 안녕하세요! 이번 시간엔 IntelliJ의 .http 파일을 어떻게 사용하는지 소개드리겠습니다. 모든 코드는 Github에 있습니다! 소개 프로젝트를 계속 운영하다보면 로컬 환경외에 개발/운영 환경에서 API jojoldu.tistory.com 유명한 블로그이시자 개발바닥 채널을 운영하고 계시는 향로님..
안녕하세요 폭발토끼 입니다. 6개월이라는 시간동안 진행되었던 글또 8기 활동이 오늘로써 마침표를 찍게되었습니다. 글또를 통해 무엇을 느꼈는지 솔직하게 써보는 시간을 가지려고 합니다. 글또에 참여하게 된 계기 사실 글또에 참여하게 된 계기는 너무 단순합니다. 평소 제가 생각하는 것을 글 또는 말로 표현하는 것을 어려워 하던 제게 글또라는 활동이 있으니 한번 참여해보는 것이 어떻게냐는 제안을 받았습니다. 뭔지 몰랐던 전 링크를 타고 들어갔고 이런 활동이 있는지 처음 알게 되어 고민하지도 않고 참여하게 되었습니다. 그렇게 글또 8기의 회원이 되었습니다. 글또를 진행하면서 목표는 단순했습니다. 10만원이라는 예치금에서 돈을 깎이지 않는 것을 목표로 잡았습니다. 예치금이 삭감되지 않았다는 점은 그만큼 제가 글또 ..
안녕하세요 벌써 글또 프로그램이 마지막을 향해서 달려가고 있습니다. 앞으로 총 4번의 활동만 남았는데요 ㅎㅎ 항상 처음보단 마지막이 중요하다고 생각하기 때문에 끝까지 완주를 하기 위해 노력하려고 합니다. 글또 9번째 글인 오늘의 주제는 spring boot 와 redis 를 연동했던 과정을 적어보려고 합니다. 배경 현재 토이 프로젝트를 진행하는데 있어서 jwt 를 사용하여 로그인 기능을 구현하고 있습니다. accessToken 으로 인증 절차를 처리하고 있고 accessToken 이 만료되었을때 이를 갱신시켜줄 수단으로 refreshToken 을 사용하고 있습니다. 이때 refreshToken 을 사용하여 accessToken 을 갱신시켜주려고 할때 서버쪽에서도 어딘가에 refreshToken 을 가지고..