스프링은 내장 톰캣을 가진다

톰캣을 따로 설치할 필요 없이 바로 실행 가능하다

 

Socket

운영체제가 가지고 있는 것

 

A 에 5000번 포트를 만들면 B가 ip주소 : 5000번으로 A와 통신한다

C라는 사람이 A와 통신을 하고 싶어서 소켓을 열어주길 원했고

그때 새로운 소켓 5001번이 열리면 5000번이 끊기고 다시 5001과 통신된다

 

그러면 계속 자원을 주고 받고 있기 때문에 5000번에 C가 통신할 수 없게된다

 

이때 5001번은 스레드1로 열고 5000번에는 main스레드로 만들어서

C가 5000번에 연결하게 될 수 있게 된다

 

그러면 다시 5002번이라는 스레드2로 소켓을 열면 C는 5002번과 연결된다

이렇게 하는 이유는 main스레드는 계속 새로운 통신을 받아야 하기 때문이다

 

이렇게 계속 반복되는것을 소켓 통신이라고 한다

 

소켓통신의 장점은 연결이 계속 되어있는것이고

단점은 계속연결되어 있으니 부하가 늘어나 성능이 떨어진다

 

http통신은 연결을 지속시키지 않는 stateless 방식을 사용한다

 

http

문서를 전달하는 통신 이다

 

B가 A에 무엇인가 요청을하면 계속 연결하는게 아니라

응답을 받고는 연결이 끊긴다

 

http통신의 장점은 연결이 계속 되어있지 않아 부하가 적지만

다시 연결될때는 다시 새로운 작업이 진행된다

즉 이전에 작업과 현재 작업이 동일한 사람인지 알지 못한다