일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- C#
- Selenium
- JSON
- 오류
- LIST
- Python
- C++
- Numpy
- 명령어
- 핑거스타일
- paramiko
- pytorch
- error
- pip
- label
- Visual Studio
- 프로그래머스
- OpenCV
- SSH
- mysql
- VS Code
- 채보
- Docker
- YOLO
- Linux
- windows forms
- ubuntu
- C
- 기타 연주
- pandas
- Today
- Total
목록스프링부트 (2)
기계는 거짓말하지 않는다
서버에서 클라이언트로 단방향 통신이 필요할 때가 있다. 일반적으로 풀링 방식을 사용하게 되면 비효율적일 수 있는데, 실시간 알람, 이벤트 등을 위해 Server-Sent Events(SSE)를 사용할 수 있다. 주의점은 SSE에서 DB 관련 작업을 하지 않아야 하고, 타임아웃 또는 complete 후 재 연결 시 데이터 유실이 가능하다. Controller connect 후 emitter를 반환해야 한다. 또한 connect 후 더미 데이터를 한 번 전송해야 503 에러를 방지할 수 있다. connect 외에 함수에서 반환할 경우 타임아웃까지 계속해서 대기 상태가 된다. connect의 id는 고유해야 한다. id 값으로 중복 요청을 방지할 수 있다. 아래 코드는 샘플이며, 재 연결 유실 처리, 중복 요..
STS 4.7.2 Released Version 을 사용하였다. 실행 시켜 왼쪽 위의 File - New - Spring Starter Project 를 선택한다. 선택 시 볼 수 있는 UI 이다. Name란에서 프로젝트 명을 변경할 수 있고 빌드 도구는 Gradle, Maven을 선택할 수 있다. 기본적으로 Gradle이 설정되어있다. Group, Package 명을 원하는 이름으로 변경하고 다음으로 넘어간다. 이곳에서 dependency를 설정할 수 있는데 자신이 사용할 라이브러리를 추가한다. 필수적으로 Spring Web 을 선택하고 내장 톰캣이 포함되어있어 따로 톰캣을 설치하지 않는다. Lombok과 DevTools는 개발을 편리하게 해준다. Spring Data JPA 를 사용할 것이라면 추가하..