반응형 분류 전체보기323 [http client] IntelliJ .http로 간단히 API 테스트 하는 방법#2 이번에는 IntelliJ에서 API를 테스트하는 방법 중 Spring Controller 소스 기반으로 http client를 생성하는 방법과 IntelliJ Endpoint를 사용하여 http client를 생성하는 방법을 알아본다. 지난번 내용은 아래를 참조하자 [http client] IntelliJ .http로 간단히 API 테스트 하는 방법IntelliJ IDEA는 다양한 기능을 통해 개발자들이 HTTP 요청을 테스트하고 디버깅할 수 있도록 도와준다. 특히 REST API 개발에서 HTTP 요청을 빠르게 테스트하는 것이 중요한데, IntelliJ에서는 HTTP Client라happy-jjang-a.tistory.com Controller 소스 기반 HTTP Client 테스트아래와 같이 Con.. 2024. 9. 29. [http client] IntelliJ .http로 간단히 API 테스트 하는 방법#1 IntelliJ IDEA는 다양한 기능을 통해 개발자들이 HTTP 요청을 테스트하고 디버깅할 수 있도록 도와준다. 특히 REST API 개발에서 HTTP 요청을 빠르게 테스트하는 것이 중요한데, IntelliJ에서는 HTTP Client라는 강력한 도구를 제공하는데, 사용하는 방법도 직관적이고 간단하다. IntelliJ에서 HTTP Client로 API 테스트 하는 방법에 대해서 알아본다. 1. HTTP Client 설정IntelliJ에는 내장된 HTTP Client가 있어, 별도의 플러그인 설치 없이도 HTTP 사용이 가능하다. HTTP Client는 .http 파일을 생성하여 사용한다. 만약에 없는 경우 IntelliJ 플러그인에서 http로 검색을 해서 설치한다. 2. 기본 요청 테스트먼저 .ht.. 2024. 9. 15. [MSA] Saga 패턴 이해와 종류(8가지) MSA 보상트랜잭션에서 많이 얘기가 나오는 Saga패턴에 대해서 알아본다. Saga 패턴- 서비스에서 각 업데이트가 이벤트를 발행해 다음 차례의 이벤트를 트리거하는 일련의 로컬 트랜잭션- 만약 일련의 작업들 중 하나라도 실패하면 이전까지의 작업이 완료된 서비스들에게 보상이벤트를 소싱함으로써 분산 환경에서 일관성을 보장하는 패턴- Saga패턴은 통신방식([Sync]동기/[Async]비동기), 일관성 처리([Atomic] 원자적 일관성/[Eventual] 최종 일관성), WorkFlow 조정 방식([Choreography]코레오그래피/[Orchestration]오케스트레이션)에 따라 8가지가 있음 1. Epic Saga(에픽 사가)동기 통신 + 원자적 일관성 + 오케스트레이션(SAO)많은 사람들에게 익숙하고.. 2024. 9. 12. [독서] 언스크립티드(부의 추월차선 완결판) - 엠제이 드마코 각본화된(세뇌된) 대중적인 노예의 삶을 살지 말고 각본에서 탈출하여 기업가적 정신을 가지고 시간적, 경제적, 육체적 자유를 찾고 진정한 자신의 삶을 찾아라. 각본화된 삶에서 탈출하기 위해 정신적으로 어떻게 생각을 바꿔야 하는지, 실행은 어떤식으로 어떻게 해야하는지 등에 대해서 설명을 해주고 있다. 실행적인 부분에서는 확실히 사업적인 관점에서 접근을 하고 있어서 실제 경험이 없으면 잘 안 와닿을 수도 있을 것 같다. 하지만 현실을 자각하고 비전을 다시 잡는 일은 사업가나 직장인 구분없이 동일할 것 같고, 실행관점에서도 직장을 다니면서도 자기가 맡은 일에 대해서 충분히 실행해 볼수 있는 것이라 생각한다. 어떤 일을 하던지 자기가 현재 하는 일을 잘 해내는 사람이 다른일도 잘 해낼 수 있기 때문일 것이다. .. 2024. 9. 10. 브라우저에서 화면 css 스타일 전체 제거 프론트 개발 시 성능 등의 이유로 css 스타일의 영향도를 파악하기 위해 브라우저에서 css 전체를 한번에 제거하고 실행해보고 싶을 때가 있다. 이때 쉽게 화면에서 css 스타일을 제거할 수 있는 방법을 알아본다. 크롬에서 개발자도구를 실행하고, Console 탭에서 아래 명령을 입력한다. document.head.parentNode.removeChild(document.head) 참고로 크롬 개발자도구에서 위 명령을 복사붙여넣기 하면 아래와 같이 Warning이 떠서 직접 타이핑을 해야 한다. 크롬 개발자도구에서 위 명령을 naver에 접속하고 실행한 결과는 다음과 같다. 2024. 9. 7. [MSA] 분산된 서비스 간의 WorkFlow(워크플로) 관리 - 오케스트레이션과 코레오그래피 분산된 서비스 환경에서 도메인에 특정한 작업을 수행하고, 그와 관련된 부수적인 문제를 처리하기 위해 둘 이상의 분산된 서비스를 하나의 WorkFlow(워크플로)로 조합하는 방법을 알아본다. WorkFlow관리 방법에는 크게 오케스트레이션(Orchestration) 패턴과 코레오그래피(Choreography) 패턴이 있다. MSA에서 보상트랜잭션 관리를 위한 Saga에서 얘기하는 오케스트레이션, 코레오그래피 패턴과 동일하다. 1. 오케스트레이션(Orchestration) 패턴 오케스트레이터(중재자)를 활용해서 중앙에서 워크플로 상태, 선택적 로직, 에러 처리, 알림 등 워크플로를 관리하는 방법MSA에서는 워크플로당 오케스트레이터를 하나씩 두는 것이 일반적 임경계조건과 에러 조건 등이 복잡한 워크플로 모델링.. 2024. 9. 7. [MSA] 분산 데이터 액세스 패턴(분산된 데이터에 어떻게 접근할 것인가) MSA에서 서비스를 분리하게 되면 기존 통합되어 있던 데이터도 함께 분리가 된다. 이렇게 분산된 서비스 환경에서 서비스가 자신이 소유하지 않는 데이터에 접근하는 방법들에 대해 알아본다. 1. 서비스 간 통신 패턴다른 서비스에 필요한 데이터를 요청하는 가장 일반적인 패턴(타 서비스 API 호출)단순하고 직관적이나, 서비스 간 동적 커플링이 발생 함장점단점 단순하고 직관적 네트워크, 데이터, 보안 Latency가 발생(성능 저하) 데이터 용량 문제가 없음 확장성/처리량 이슈(타 서비스와 함께 확장 필요) 결합도에 따른 내고장성/가용성 저하 서비스 간 계약이 필요(API명세 등) 2. 컬럼 스키마 복제 패턴필요한 컬럼을 분산된 서비스의 여러 테이블에 복제해서 다른 바운디드 컨텍스트에서 자급자족적으로 사용.. 2024. 9. 1. [MSA] 서비스 분리 해야할 때와 통합 해야할 때(서비스 분해와 통합 요인) MSA에서 서비스 분리를 고려할 때 어떤 경우에 서비스를 분리해야하고 반대로 어떤 경우에 서비스를 통합해야하는지 서비스의 분해인과 통합인에 대해서 알아본다. 간단하게 모률화, 세분도라는 용어부터 알아보자모듈화: 사용상의 유연성과 다양성을 위해 표준화된 단위로 만듬, 시스템을 별도의 파트로 분해하는 것세분도: 더 큰 단위를 형성하는 많은 입자 중 하나로 구성하거나, 그렇게 보임. 모듈화로 나눠진 개별 파트의 사이즈에 관한 것MSA에서 이 세분도를 어디까지 어떻게 가져가야 하는지에 대한 고민을 많이하게 된다. 서비스를 너무 작게 나누면 관리의 복잡도, 통신 복잡도, 결국 아키텍처의 복잡도가 증가하게 되고, 너무 큰 단위로 나누게 되면 서비스간의 결합도, 영향도 등이 증가하게 된다. 아래의 서비스 분해인과 통.. 2024. 8. 31. 이전 1 2 3 4 5 ··· 41 다음 반응형