
WebClient는 Spring WebFlux에서 HTTP 요청을 비동기 방식으로 처리하는 강력한 도구이다. 비동기 처리는 주로 리액티브 프로그래밍에서 사용되며, 비동기 요청을 보내고 응답을 기다리는 동안 다른 작업을 병렬로 처리할 수 있게 한다. * 동기와 비동기/ 블럭과 넌블럭 차이 이해하기https://musma.github.io/2019/04/17/blocking-and-synchronous.html 동기와 비동기, 그리고 블럭과 넌블럭무릇 모든 개발자들, 아니 비단 개발자가 아니라 할지라도 컴퓨터 관련 산업계 종사자들이라면 오다 가다 한 번씩은 꼭 들어보고, 또 익혔음직한 내용이겠습니다. 이름하야, 동기(Synchronous)와 비musma.github.io 하지만 WebClient를 사용방법..

프로젝트 오픈 후 모니터링 중 타사의 API 호출이 안되는 경우가 발생했다. 에러 로그도 없이 호출이 안되는 상황....뭘까..? 상황은 이랬다. 우리 시스템으로 요청이 오면 서비스단에서 DB를 확인 한 후, 해당 데이터의 종료시간이 null인 경우에만 타시스템에 요청을 보내게 되어있다.문제는 타시스템에 요청을 하고 응답을 받는 시간이 꽤 길어서 마냥 기다리기만 할 수 없다는 것이다. 따라서, 쓰레드를 생성하여 요청을 하고(응답값은 프로그램에 영향을 미치지 않고,DB에만 저장된다), 원래의 단일 쓰레드에서 종료시간을 업데이트 했다. 이게, 단순히 테스트를 할 때는 문제가 되지 않았는데..오픈 후 많은 많은 요청이 발생하니 조회와 업데이트의 순서가 보장되지 않아, 실제로 요청을 보내야 할 건들의 종료시간이..
[상황]jar 파일을 실행시키는 start.sh 파일을 생성하여 service 등록을 하였는데, 정상적으로 동작하지 않는 기능이 생겼다. >> 서비스 등록 방법은 아래 글에 있습니다!https://yes-admit.tistory.com/57 [CentOs] 서비스 등록으로 서버 재부팅시 자동으로 프로그램 실행시키기테스트 중 서버를 자주 내렸다 올렸다 하는 경우가 생겼는데 그 때마다 서비스를 새로 올려줘야해서 불편했다. 하나만 올리는거라면 그나마 괜찮겠지만 나는 2개나 올려야 해서...너무 귀찮았다yes-admit.tistory.com 환경변수의 문제였는데 해당 기능이 정상적으로 동작 하기 위한 환경변수가 특정 사용자에게만 부여가 되어있기 때문이었다. 따라서 정상 실행을 위해서는 해당 사용자로 실행을 해야..

socket 통신을 통해 STT를 붙여야 하는 경우가 생겼다. 이전에도 여러번 socket으로 데이터를 주고 받은 적이 있기 때문에, 이 정도는 아무것도 아니지ㅋ 생각했는데, 업체로부터 제대로된 연동정의서가 아닌 C# 샘플 코드를 받았다. 흠 C#은 모르는데...?다행히 샘플 코드가 어렵지 않아 Java로 포팅하면서, 제대로 했다고 생각했는데....계속 잘못된 결과를 받았다. 그치..한번에 잘 될 일이 없지..ㅎ 그치만 아무리 봐도 뭐가 잘못인지 모르겠다.. 업체에 문의해봐도, 본인들도 그 결과는 처음본다고... 네..? 나에게 도움이 되는 답변은 아니었다.그래서 수석님에게 도움을 요청하니, 코드의 문제는 아닌거 같고, 엔디안 문제 아니냐는 힌트를 주셨다. 엔디안이요? 와 완전 처음 들어보는 말..엉엉..

Null의 문제점Java에서 null은 매우 오랜 시간 동안 객체가 없음을 나타내는 대표적인 방법이었다. 하지만 이 null이 시스템 전반에 걸쳐 여러 문제를 일으킬 수 있다. 1. NullPointerException (NPE)프로그램에서 객체가 null인 상태에서 그 객체에 접근하려 할 때, NPE가 발생하며 이는 개발자들이 자주 마주하는 에러 중에 하나이다.String name = null;System.out.println(name.length()); // NullPointerException 발생 2. 코드 가독성 저하null 처리를 위해 코드 전반에 if문을 사용해야하며 가독성이 떨어진다.if (user != null && user.getName() != null) { System.out..

javascript에서 stomp.js를 사용하여 rabbitMQ에 연결하는 방법은 매우 쉽다.message를 queue에 발행하면 연결 된 웹소켓으로 queue 내용을 소비한다.Queue 생성 및 message 발행subscribe 가능한 destination 종류는 /temp-queue, /exchange, /topic, /queue, /amq/queue, /reply-queue 이렇게 있으나, 나는 간단히 javascript에서 바로 rabbitMQ를 붙을 수 있는지만 확인 하고자 하여 queue에 직접 붙었다. 1. Queue생성name : chat 을 작성하고 [Add queue] 버튼 클릭2. message 발행payload에 메세지를 작성 후 [Publish message] 버튼 클릭나는 j..

메세지큐메세지 큐는 서로 다른 어플리케이션끼리 메세지를 주고 받으며 효과적으로 상호작용 한다.메세지 큐는 도착지의 프로그램이 바쁘거나 연결이 되지 않은 경우에 임시적인 메세지 저장소를 제공한다. 이를 통해 메세지가 손실되지 않고 안전하게 전달 할 수 있다.메세지 큐는 producer, broker(the message queue software), consumer로 구성된다.메세지 큐는 어플리케이션 간의 비동기 커뮤니케이션을 지원하며, 이는 어플리케이션이 동시에 실행되지 않아도 서로 메세지를 주고 받을 수 있다는 것을 의미한다.RabbitMQ메세지큐의 일종으로 서로 다른 어플리케이션이 메세지를 송신/수신하며 중개자 역할을 한다.보통 AMQP(Advanced Message Queuing Protocol) ..
avax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed 자바에서는 신뢰할 수 없는 인증서를 가진 서버(요청하는 site의 ssl 인증서가 사설인증서)로의 요청을 제한하는데, 이를 해결하기 위해서는 두가지 방법이 있다. 1. http 요청 시 인증서를 무시하도록 코드 작성- 솔직히 이것 때문에 코드 변경하기 싫어요🥲2. 해당 사이트의 인증서를 JVM의 신뢰할 수 있는 인증서 저장소(Truststore)에 추가 나는 고객사로부터 인증서를 받아 JVM에 설치하는 방법을 선택했다. JVM이 설치되어 있는 서버에서 아래의 명령어를 실행한 후 재시작을 하면 된다.keytool -tr..
- Total
- Today
- Yesterday
- 리액트
- 현대오토에버
- java
- 자바
- javascript
- 도커
- 코테
- Docker
- 전자정부프레임워크
- 스프링
- 현대코테
- 쿠버네티스
- Spring
- Kubernetes
- 코딩테스트
- Linux
- 자바코테
- softeer
- 자바스크립트
- 현대
- 톰캣
- centos
- 오토에버코테
- mysql
- springboot
- tomcat
- softeer java
- java 코테
- 아파치카프카
- react
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |