분류 전체보기
-
[Istio] Istio란?인프라&운영체제/Istio 2022. 1. 28. 12:50
Istio는 마이크로서비스 간 데이터 공유를 제어하는 기반을 제공하는 오픈소스 서비스 메쉬 플랫폼이다. 서비스 메쉬란? 애플리케이션의 다양한 부분들이 서로 데이터를 공유하는 방식을 제어하는 방법이다. 서비스 간 커뮤니케이션을 관리하는 다른 시스템들과 달리, 서비스 메쉬는 애플리케이션에 구축된 전용 인프라 계층을 말한다. 서비스 메쉬는 애플리케이션 간 통신을 위해 프록시 방식으로 구축되는데, 서비스 메쉬에서는 아래처럼 요청이 자체 인프라 계층의 프록시를 통해 마이크로서비스 간에 라우팅된다. 그래서 서비스 메쉬를 구성하는 개별 프록시는 서비스 내부가 아니라 각 서비스와 함께 실행되므로 'sidecar'라고도 불린다. 서비스가 직접 서비스 간에 커뮤니케이션 통신을 통제하는 코딩을 직접하지 않아도 되기 때문에 ..
-
'클린 아키텍처'를 읽고IT, 기술 도서 2022. 1. 8. 15:41
밥 아저씨의 책을 읽어보았다. 워낙 클린코드로 유명하신 분이라 저자에 대한 설명은 말이 필요없을 것 같다. 이 책을 읽는 내내 들었던 느낌은 decoupling, DIP였다. 용어는 바뀌어도 DIP의 확장 개념으로 생각됐다. DIP를 위해 중간 인터페이스 역할은 필수적이겠구나란 생각도 함께 들었다. 고수준 모듈이 저수준 모듈로 의존하지 않기 위해 중간 인터페이스 역할(모듈이 될 수도 있고 코드가 될 수도 있고)을 통해 저수준 모듈이 인터페이스로 의존성이 향하게 하고 고수준 모듈도 인터페이스를 통해 저수준의 모듈에 의존성이 얽매이지 않는 것이다. 후반부에는 밥 아저씨의 개발자 인생사를 써둔 목차가 있는데, 그 시대의 소프트웨어나 하드웨어를 잘 모르는지라 좀 건성으로 읽었다. decoupling, dip가 ..
-
Java 8 in Action을 읽고IT, 기술 도서 2022. 1. 8. 14:46
읽은지는 꽤 됐지만, 후기를 늦게서야 남긴다. java 8에 관해서 책으로 습득할 틈 없이 바로 실무에서 써야했기 때문에 따로 책을 보고 학습을 못했었다.(책을 보면서 이런 기능도 있었구나 하는 포인트들이 꽤 있었다) java 8을 학습하기 위해 추천이 가장 많았던 java 8 인 액션을 구입해서 읽었다. 알기론 jvm 내에서도 변화가 있었는데(permenant area가 meta space로 변경된 점이라든가.) jvm에 관한 책은 아니므로 따로 설명은 없었다. java 8의 가장 큰 변화점은 함수형 프로그래밍의 적용이 아닐까라고 개인적으로 생각한다. 처음 함수형 프로그래밍으로 코드를 짤 때는 복잡하고 어려워서 힘들었는데 익숙해지니 코드가 더 간결해지는 효과를 볼 수 있었다. 함수형 프로그래밍이 지닌 ..
-
Mac M1에서 redis-server 명령어 동작하지 않을 때 해결방법DataBase/Redis 2021. 6. 20. 13:01
정말 간단하게 정리. 6.0.10 버전 이상부터는 해결됐다고 한다. 사정이 없다면 버전업을 추천(2021년 6월 20일 기준 6.2.4버전이 stable) redis-server 명령어가 동작하지 않아서 사용하고 있는 노트북이 m1 맥북프로랑 관련이 있지 않을까 싶어 검색해보니 맞았다. 아래처럼 입력하면 잘 실행되는걸 볼 수 있다. $ sudo redis-server --daemonize yes 깃헙 이슈를 보면 Developer-Ecosystem-Engineering분이 남겨두신 상세한 설명을 내 나름 해석해보자면, (어려워서.. 정확한 이유를 알고싶으시면 원문을 보시는 걸 추천) redis-server 커맨드가 수행되면서 초기화 시, 환경변수들을 arguments로 받는다고 한다. 이 argument..
-
조르바의 2020년 회고이자 2번째 직장에서의 0.9년개발 일기장/직장 생활 2021. 1. 1. 21:55
새옹지마 카카오 정규직 전환에 떨어졌을 때는 세상 다 끝난 줄 알았는데, 떨어지지 않았다면 지금만큼의 배움과 만족을 얻을 수 있었을까 싶다. 전환에 떨어졌을 때 '더 좋은 일이 생기려고 그러나보다'라며 위로해주신 분이 계셨던 듯하다. (작년이라 기억이 가물가물) 일 말고 생활면에서도 서울이 아닌 제주에서의 생활은 많이 외로웠을거다. 제주 생활을 청산하고 서울로 올라올 때, 나보다 부모님 실망이 더 크신 것 같아 씁쓸했다. 취업 준비기간이 얼마나 될지 알 수 없으니 실업수당을 받으려고 고용센터에 가서 교육을 받고 서류를 제출했었다. 막연하게 자신감과 불안감 둘 다 동시에 가지고 있었는데 카카오에 붙었었다는 자신감과 전환에서 떨어졌다는 불안감 말이다. 하지만 이 나이에 계속 빌빌댈 수 없다는 의지가 자신감과..
-
올 상반기 만들어본 개인 프로젝트(국내 축제 알리미)개발 일기장/개발 일상 2020. 12. 31. 15:23
국내 축제를 알려주는 구독 서비스를 간단하게 만들었었는데, 기본적인 기능만 구현하고 나서는 열정이 식어서 더이상 고도화하지 않았다. 창고 구석에 넣어두고 잊어버린 물건처럼 되어버린 서비스라 아쉬움이 남는다. 아까우니 블로그에 이런걸 만들었었다 하는 기록만 해본다. 헤로쿠에서 제공해주던 공짜 MongoDB가 detach되서 지금은 로그인도 안된다ㅜ(다시 등록해볼까했는데 이제 돈 내야하네) 카카오톡으로도 보내는 것도 고려했는데 요것도 유료라 패스했던 프로젝트. 개인 프로젝트도 돈을 써야하는 것이여.. url: festival-news-alarm.herokuapp.com/ 기술 스택 - 개발기간: 주말동안 개발(약 2달) - backend: kotlin, spring - frontend: vuejs - inf..
-
[Spring] Kotlin + Retrofit으로 SOAP 통신하기웹 개발/Spring Framework 2020. 10. 10. 16:05
SOAP(Simple Object Access Protocol)로 통신하는 방식은 최근에는 찾아보기 힘들다. 그래서 그런지 외부와 통신해야하는 업체가 SOAP로 통신을 주고 받아야하는 조건과 우리 서비스에서 사용하는 http 클라이언트 라이브러리인 Retrofit을 사용해야 하는 조건을 모두 만족시켜주는 시원한 해결방법이 없었다. 여기저기의 정보를 조합해서 통신하는데 성공했는데 그 방법을 정리하려 한다. Retrofit에서 XML 통신을 위해 JAXB converter 라이브러리를 제공한다. Retrofit으로 XML 통신을 하는 방법은 이 글을 참고하면 된다. 하지만, SOAP 통신을 할 때 namespace에 prefix를 부여하기도 할텐데 Retrofit에서 제공하는 JAXB converter 라이..