[서적] 그림으로 이해하는 서버 구조와 기술 | 요코타 카즈키, 엔도 유키
·
노트/Review
그림으로 이해하는 서버 구조와 기술 | 요코타 카즈키 - 교보문고그림으로 이해하는 서버 구조와 기술 | 쉽고 재미있게 시작하는 서버 구조와 기술!우리가 당연하게 하고 있는 모든 온라인 활동 뒤에는 서버나 네트워크 같은 정보 시스템이 있다. 이러한 인프product.kyobobook.co.kr  올해 6월에 출간되었을 때 과장님께서 "그림으로 이해하는" 시리즈가 새로 나왔다고 알려주셔서 바로 보게 되었다. 책 표지에 써있는 문구처럼 쉽게 서버와 네트워크 기초 지식에 대해 배울 수 있고 서버와 관련된 여러 개념들을 배울 수 있는 책이다. 사실 처음 책을 폈을 때 서버가 무엇인지, 클라이언트-서버 시스템이 무엇인지부터 나오길래 "이 책을 읽는 게 맞나"를 고민이 됐다. 이미 정리된 내용을 많이 갖고 있기도 했..
[Spring] Custom Filter로 로그 파밍하기 (CloudWatch X Logback)
·
Spring
들어가기 전에모든 요청과 응답 로그를 Logback 설정을 통해 CloudWatch에 적재하기로 했다. 이미 CloudWatchLogsClient를 활용해서 로그를 적재하는 코드가 있었기 때문에 굳이 구현 방법을 변경할 필요는 없었지만, Logback 설정을 통해 적재했을 때 어떤 장점과 단점이 있는지 그리고 우리가 구현하고자 하는 방향과 어느 것이 더 맞는지 확인해 보기로 했다. 시작하기에 앞서 이번 글은 CloudWatch 적재에 초점을 둔 만큼 Loback 설정에서 다양한 방법으로 로그를 적재하는 방법은 다루지 않는다. console로 출력하거나 file로 저장하는 등의 방법을 설정하기 위해서는 아래와 같이 appender를 사용하면 된다. // 출처 : https://docs.spring.io/s..
INFCON 2024
·
노트/회고
인프콘에 가기까지어느 날 메일을 확인하는데 인프런으로부터 유저 인터뷰를 요청하는 메일이 와있었다.  혜택에 그렇게 가기 힘들다는, 내가 2년 연속 광탈한 그 인프콘 티켓이 있었지만 워낙 이런 당첨 운이 없기 때문에 큰 기대없이 작성해서 제출했다. 그래서 내가 어떤 내용을 작성했는지 스크린샷을 남겨두지도 않았다. 그런데。。。  내가 당첨이라니⎝⍥⎠!  문자로 먼저 받자마자 싱글벙글한 채로 과장님께 자랑해서 나중에 로또라도 당첨된 줄 아셨다고 했다. 감사합니다 인프런, 사랑해요 인프콘!  인프콘 2024이름표와 팜플렛, 인프콘 가방 그리고 생수를 받아 입장한 인프콘! 팜플렛에는 스탬프 투어 페이지가 있어서 인프콘에서 어떤 프로그램에 참여할 수 있는지 한 눈에 확인할 수 있었는데 다 참여해서 굿즈는 꼭 받아가..
[Network] 네트워크 확인을 위한 명령어(1) - ping
·
Computer Science/Network
PingIP 네트워크를 통해 특정 목적지까지 네트워크가 잘 동작하는지 확인하는 명령어이다. 기본 문법ping [option] [target_name] option은 선택적으로 사용할 수 있으며, target_name에는 목적지 Host의 IP 주소 혹은 도메인을 적는다. 해당 명령어를 사용할 때는 먼저 localhost에서 실행해서 로컬 네트워크 인터페이스가 작동 중인지 확인한 후에 점점 더 멀리 있는 Host와 Gateway에 ping 명령어를 수행해야 한다. 그래야 네트워크의 어느 부분에 문제가 있는지 단계적으로 파악해 나갈 수 있기 때문이다. 기본적으로 송신되는 인터페이스에서 설정된 IP가 출발지 IP로 지정되지만 출발지 옵션을 통해 루프백 인터페이스 IP, 즉 127.0.0.1(IPv4) 혹은 :..
[Network] ICMP
·
Computer Science/Network
들어가기 전에다른 업체에 방화벽 허용 요청을 했는데, 방화벽이 허용된 걸 어떻게 알 수 있을까요? 위의 질문과 관련해서 ICMP에 대한 개념과 ICMP 메시지가 활용되는 방법들에 대해 정리했다. 보안 상의 이슈로 모든 네트워크 통신 문제를 ICMP를 사용해 확인할 수는 없지만 실무에서 많이 사용되기에 알아두면 좋겠다.  ICMP(Internet Control Message Protocol)ICMP의 탄생을 이해하기 위해서는 IP의 특징을 먼저 알아야 한다. IP로 데이터를 전송하면 도착한 결과를 확인할 수 있을까?  정답은 NO 다. IP에는 데이터가 제대로 도착했는지 확인할 수 있는 방법이 없기 때문이다. "데이터를 보내기 위해 최선을 다하겠지만 안 되도 어쩔 수 없지."라는 IP의 특징을 바로 Bes..
[서적] 이펙티브 엔지니어 | 에드먼드 라우
·
노트/Review
이펙티브 엔지니어 | 에드먼드 라우 - 교보문고이펙티브 엔지니어 | 뛰어난 엔지니어와 일반 엔지니어는 무엇이 다른가? 열심히 일하기와 똑똑하게 일하기는 어떻게 다른가? 구글, 페이스북, 인스타그램, 드롭박스 등 세계 최고 기업의 실제product.kyobobook.co.kr  오랜만에 연락드린 멘토님께서 응원과 함께 를 선물해 주셨다. 멘토링을 받을 때도 프로그래밍 지식 외에 개발자로서 어떤 마음가짐을 가져야 하는지, 한정적인 시간을 어떻게 잘 활용해야 하는지에 대한 이야기를 많이 해주셨었는데 이 책을 통해서도 '레버리지'라는 개념을 통해 어떻게 '이펙티브 엔지니어'가 될 수 있는지에 대해 배울 수 있었다. 효율성에서 매우 중요하지만 개발자들이 종종 간과하는 것이 메타 기술이다.메타 기술은 시간과 에너지..
[jOOQ] jOOQ는 처음이라
·
DB
들어가기 전에이번 회사에서 처음으로 jOOQ를 사용하게 됐다. MyBatis와 JPA만 사용했기 때문에 jOOQ를 어떤 이유에서 사용하는지 정확히 파악하기 위해 여러 글들을 봤다. 그래서 이번 글에서는 jOOQ가 무엇인지 그리고 평소에 잘 사용하던 JPA와 비교해 어떤 점이 다른지를 중점으로 다뤄볼 예정이다. jOOQjOOQ는 Java Object Oriented Querying로 자바 코드를 이용해서 type-safe한 SQL 쿼리를 생성할 수 있게 해주는 데이터베이스 인터페이스를 말한다. 그렇다면 어떻게 type-safe한 쿼리를 작성할 수 있는 걸까? 아래 문구를 보면 알 수 있듯이 데이터베이스 접근을 통해 자바 코드를 생성해 주는데 개발자는 이 메타 모델을 통해서 type-safe한 쿼리를 작성할..
[Spring] Server-Sent Events로 알람 서비스 개선하기
·
Spring
들어가기 전에 F-lab 프로젝트가 끝나고 비슷한 기술 스택을 사용하는 프로젝트 강의를 보면서 어떤 걸 더 고민하고 개선할 수 있을지 시야를 넓히려고 하고 있다. 마침 간단한 SNS 서비스를 만들면서 대용량 프래픽을 고려했을 때 어떤 점들을 개선시킬 수 있는지를 담은 강의가 있었는데 비슷한 알람 기능이 있었다. 우리도 알람 조회 API를 통해 알람을 확인하는 기능까지는 개발했다보니 그 이후에 할 수 있는 고민을 알게 되고 또 직접 구현해 보는 게 굉장히 흥미로웠다. 기본적인 기능은 게시물에 댓글을 달거나 좋아요를 클릭하는 등의 특정 이벤트가 발생했을 때 그 내용이 수신자에게 알람 데이터로 저장이 되고 수신자는 알람 조회 API를 통해 내게 온 알람들을 확인할 수 있는 것이다. 이때 조회 페이지를 새로고침..
[글또 8기] 여정을 마치며
·
노트/회고
들어가기 전에 이번 년도는 시간이 어떻게 가는지 모르게 지나고 있는데 정신차려보니 글또 8기 활동도 막바지가 되었다. 나의 열두 번째 글은 회고로 마무리지어보겠다. 글또 활동 돌아보기 잔여 패스권 : 2 제출 횟수 : 11 제출글 [글또 8기] 시작하는 다짐 글 [Java] Object.hashCode()와 Hashing, 그리고 Hash Collision [DB] 무조건 정규화가 정답일 수 없는 이유 Lombok을 사용하지 말라고? Spring REST Docs를 선택한 이유 [글또 8기] 중간 회고 [글또 8기] 2차 커피드백 [Spring] 쉽게 이해하는 Spring Security + JWT 로그인 구현기 Github Actions: CI/CD 구축 (feat. shell script) - 실전편..