전체 글

5%라도 남기자
알고리즘

[백준] 22233번 가희와 키워드

https://www.acmicpc.net/problem/22233 22233번: 가희와 키워드 1번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, floyd, os가 됩니다. 2번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, os가 됩니다. map은 1번째 글과 2번째 글에 중복으로 등장하였음을 www.acmicpc.net 시간 1.5초 -> 대충 (n) 2억?으로 생각했다 먼저 문제를 읽으면 최대 10개의 키워드에서 Hash_map, map, set 을 써야 하지 않을까 생각했다. 여기서는 자료구조를 생각하는게 중요한 것 같다. 글을 쓴 이후 지워진다. -> erase, remove 글에 쓴 키워들를 지우고 메모장에 얼만큼에 키워드를 출력 -> 자료구조의 size 출력하면 되겠다라..

잡담

[회고] 2023년

들어가기에 앞서 2023년 난 어떤일을 했을까에 대해서 기록으로 남겨두려고 한다. 2023년 겨울 방학 2023년중 2번째로 코딩을 많이 했던 시기인데 잘 기억이 안나서 Github를 봤다 음.. 2022년 2학기부터 들어간 교내 웹 동아리에서 동기, 후배, 선배들에게 많은 정보/지식을 배웠다. 아무 것도 몰랐던 나에게 큰 정보였고 2023년 겨울 방학부터 혼자 뭔가 건드려보자해서 많이 공부해보았다. 블로그도 시작하고 Flutter/Spring Boot 하나의 어플리케이션을 혼자 만들려고 시도하고 모르니까 구글링도하고.. 이 과정에서 Spring에 익숙해졌고 Flutter도 찍먹했다. 그리고 동아리에서 해커톤도 진행했는데 하루만에 어느정도의 결과물을 만드니 성장했다는 생각이 들었다. 생각해보니 해당 방학..

Go

[Go] 블록체인 공부가 막막하다면

들어가기에 앞서 오랜만에 글을 쓴다. 왜냐면.. 어쩌다보니 블록체인을 2달 정도 공부하게 되어서 웹 공부를 할 시간이 많이 없었다. 처음에는 분산환경에 관심이 있어서 지원한 외부 활동이였는데.(물론 내가 지원할 때 자세히 안 알아봤다..) 직접 가보니 블록체인을 연구하는 곳이였고 처음에는 어리둥절 했지만 공부하니 안되는 건 없었다. 처음시작하니 당연히 블록체인이 어떻게 연결되고 어떻게 합의, 검증을 하는지 아무 것도 몰랐다. 솔직히 그냥 합의, 검증이라는 단어 자체도 프로그래밍으로 합의, 검증?.. 이라는 생각이 들었다. 보안 쪽을 전공한 것도 아니어서 좀 더 어려웠던 것 같다. 하지만 참고할 문서들은 많았고 오늘은 그중에서 Blockchain_go, 비트코인을 기반으로 작성된 Golang 오픈소스를 소..

Go

[Go] gRPC Basics tutorial 예제 분석

들어가기에 앞서 먼저 본 글은 https://grpc.io/docs/languages/go/basics/ gRPC의 Basics tutorial의 코드 인것을 밝힙니다. gRPC를 한 번 실습해보았지만 공식 Docs를 읽어보지는 않아서 번역기 등등.. 많은 방법을 통해 혼자 번역, 분석, 주석을 단 글 인점을 알아주시길 바라고, 글이 길지만 누군가에겐 도움이 되지 않을까 하는 마음에 올려봅니다.. 먼저 Github에 존재하는 gRPC를 clone해옵니다. 그리고 현재 Basics tutorial이기 때문에 examples/route_guide안에서만 실습을 할 예정입니다. * 전체 코드를 올린 것이 아니라 부분 부분 잘라서 올려 전체 코드랑 같이봐야 이해하기 편할 거 같습니다 * 1. Protocol B..

AWS

[AWS] AWS RDS 현재활동(DatabaseConnection) 연결문제

들어가기에 앞서 오류로 3일정도 잡아 먹었다 원래 프리티어라도 청구서를 열면 지불해야 될 요금이 1000원도 안되야 하는데 7000원이 나왔다.. 이걸 보는 분들은 이런일이 없기를 바란다 AWS RDS 환경에서 DB접속을하고 API를 날리니 계속 Database연결이 쌓였다. 분명 저번 RDS를 만들었을 때는 이런일이 없었는데 기록을 안 한게 후회가 되는 시점이였다. 먼저 오류난 곳을 보자면 이렇게 지금은 55이지만 150까지 올라갔었다.. 계속 재부팅하고 해결된 줄 알았지만 해결이 안됐다. 1. hikari cp로 해결하기 hikari: connectionTimeout: 600000 maximumPoolSize: 70 maxLifetime: 300000 poolName: HikariCP readOnly..

AWS

[AWS] EC2 인스턴스에 CPU 사용률 초과 (SSH 먹통)

들어가기에 앞서 정확한 해결방법은 아니지만 이것이라도 도움이 되면 좋겠다라는 생각에 글을 쓴다. 먼저 S3에 배포를 하고 서버 동작을 확인하려고 SSH로 접속할려고 했다. 그런데 무한로딩에 걸렸고 이유를 계속 찾아본 결과 CPU사용률이 100프로에 임박했다는 걸 알아챘다 CPU사용량이 많다면 분할해서 할 수 있도록 램을 추가하거나 Swap memory로 이용할 수 있다는 글이 있어서 바로 해봤다. (생각해보니 운영체제 수업시간에 배운 Memory, HDD랑 Swap하던 방식이이었다..신기) 1. Ec2에 들어가기 ssh {ec2주소등등} 2. Swap 파일 메모리 할당 sudo dd if=/dev/zero of=/swapfile bs=128M count=16 3. swapfile에 접근 권한 주기 sud..

스프링

[Spring] Github OAuth 2.0 + Jwt를 통해 로그인하기

들어가기에 앞서 프로젝트를 진행도중 Github OAuth 2.0을 도입하고자 처음부터 마음먹었다. 그런데 OAuth가 처음이라 개념이 너무 헷갈리기도 했고 Github OAuth2.0을 대상으로 커스텀한 글이 많이 적어 시간이 많이 오래걸렸다. 다른 글들을 많이 참고하고 비슷한 부분이 많지만 그래도 Github로 한 것은 없기에 글을 써봅니다. https://velog.io/@jkijki12/Spring-Boot-OAuth2-JWT-%EC%A0%81%EC%9A%A9%ED%95%B4%EB%B3%B4%EB%A6%AC%EA%B8%B0 해당글을 참고해서 쓴 글입니다!! OAuth 구조에 대한 많은 의견이 있지만 저는 이렇게 구현하기로 했습니다. 많은 과정이있지만 간략하게 코드와, 주석, 설명으로 대체하겠습니다..

Go

[Go] Go Clean Architecture란 무엇인가?

들어가기에 앞서 gin-gonic 프레임워크로 공부하던 중 Spring Boot는 MVC패턴으로 코드를 구현하는데 Go에서도 편한 아케텍쳐가 있지 않을까해서 찾아보았고 그중에서 가장 눈에 띄었던 글을 번역한 것입니다. 링크 -> (https://amitshekhar.me/blog/go-backend-clean-architecture) Clean Architecture를 구현했기 때문에 프로젝트에서 생성된 레이어는 다음과 같습니다. 라우터 제어 장치 유스케이스 저장소 도메인 다음은 Go 언어로 작성된 백엔드 프로젝트의 전체 아키텍처입니다. 프로젝트에서 Clean-Architecture를 쓰는 이유는 무엇일까? - 프레임워크 독립적 : 모든 것이 분리되어 있어 필요한 경우 다른패키지로 교체하기가 더 쉽다 e..

Sleeg
5% 남기기