April 15, 2019

Stateful VS Stateless (2)



Summary of previous contents
저번 영상 요약

Storing in a server – Stateful
Storing in a client - Stateless

서버에 저장 – Stateful
클라이언트에 저장 – Stateless

The only difference is where the state data is stored, but there are some differences.
상태 데이터가 저장 되는 위치만 다를 뿐이지만 이로 인해 몇 가지 차이가 나게 된다.

It is all the money that the server does work, so let's look at from the server's stance.
서버가 일을 한다는 것은 모두 돈이므로 서버 입장에서 보도록 한다.

Use more/less memory.
메모리를 많이/적게 사용한다.

Since there is no need to maintain state information separately, memory capacity is saved.
상태 정보를 별도 유지할 필요가 없으므로 메모리 용량이 절약된다.

Processing speed is fast/slow.
처리 속도가 빠르다/느리다.

It is faster to maintain status information for immediate using.
상태 정보를 곧바로 활용할 수 있도록 유지하고 있는 쪽이 더 빠를 수 밖에 없다.

The implementation of load balancing is complex/simple.
로드 밸런싱 구현이 복잡/간단하다.

If there are multiple servers, the implementation for even distribution of job becomes complicated because the state of specific client↔server is unknown to other servers.
서버가 여러 대인 경우, 특정 클라이언트↔서버의 상태를 다른 서버는 모르므로 업무 균등 분배를 위한 구현이 복잡해진다.

The extension is complex/simple.
확장이 복잡하다/간단하다.

If you increase the number of servers to increase processing speed, it can be encountered problems related to synchronization of status information.
처리 속도를 높이기 위해 서버의 개수를 늘리는 경우, 상태 정보의 동기화와 관련된 문제가 발생할 수 있다.

The size of the transmitted data is small/large.
전송하는 데이터의 크기가 작다/크다.

If the state information is maintained, it is no need to be sent additional information.
상태 정보를 유지하고 있다면, 추가 정보를 전송할 필요가 없다.

Status information can be discarded or can't be discarded when necessary.
필요시 상태 정보를 폐기할 수 있다/없다.

It can be supplemented in various ways, but the server can not discard status information that exists in the client.
다양한 방법으로 보완이 가능하나, 클라이언트에 존재하는 상태 정보를 서버에서 폐기할 수는 없다.