본문 바로가기

CS | 기술면접대비

#10 쿠키와 세션의 차이 | async/await

반응형

쿠키와 세션의 차이

 

 쿠키와 세션 모두 인증방식 중 하나입니다. 쿠키와 세션의 가장 큰 차이점은 정보가 저장되는 위치입니다. 쿠키는 클라이언트측에서, 세션은 서버측에서 저장되고 관리됩니다.

 정보의 특성에 따라, 사용자의 편의를 위하되 지워지거나 가로채거나 했을 때 큰 문제가 생기지 않을 만한 정보들을 쿠키에, 사용자나 다른 누군가에게 노출되어서는 안되고 서비스제공자가 직접 관리해야하는 정보는 세션에 저장하게 됩니다.

 모두 세션에 저장하게 된다면 접속자가 많을 때 서버에 부담이 커지므로 개발자의 판단하에 적절하게 분해해서 저장해주어야 합니다.

 

 

 쿠키와 세션은 웹 상에서 사용자 인증 및 상태 정보를 저장하는 데 사용되는 방식입니다. 그러나 그들은 몇 가지 핵심 차이점을 가지고 있습니다.

 

1. 보안

: 세션은 서버측에서 관리되기 때문에 보안성이 더 높습니다. 쿠키는 클라이언트측에서 저장되어 외부 공격에 노출될 가능성이 높다.

 

2. 유효 기간

: 쿠키는 설정된 만료 기간이 있어 그 시간 동안만 정보를 저장할 수 있습니다. 반면, 세션은 서버와 브라우저 간 연결이 유지되는 동안 지속됩니다.

 

3. 저장 용량

: 쿠키는 클라이언트측에서 제한된 저장 공간을 사용하므로, 대용량 정보를 저장하기 어렵습니다. 세션은 서버측에서 저장되므로 용량에 대한 제한이 상대적으로 적다.

 

4. 서버 리소스

: 세션은 서버의 메모리를 사용하므로 많은 사용자가 접속할 때 서버 부하가 커질 수 있습니다. 반면, 쿠키는 클라이언트측에서 처리되므로 서버 부담을 줄일 수 있다.

 

 

 

 결론적으로, 쿠키와 세션을 적절하게 사용하여 사용자 인증 및 상태 정보 관리를 처리해야 합니다. 보안이 중요한 정보는 서버측의 세션을 사용하고, 그렇지 않은 정보는 쿠키를 활용하여 서버의 부담을 최소화하는 방안을 고려해야 합니다. 이를 통해 서비스의 전체 성능과 안정성을 높일 수 있습니다.

 

 

 

 


 

 

 

async / await

 promise보다 더 비동기 코드를 개선시키기 위한 패턴입니다. 함수에 async 키워드를 붙이고 비동기로 처리할 함수 앞에 await를 붙입니다. await 뒷부분은 반드시 Promise를 반환해야하고 async자체도 Promise를 반환하는 특성을 갖고 있습니다.

 

반응형

async/await은 비동기 프로그래밍을 더 쉽게 처리할 수 있도록 도와주는 문법입니다. Promise를 기반으로 하는데, 간결한 코드와 가독성 면에서 큰 이점을 제공합니다. async/await에 대한 핵심적인 보완 내용은 다음과 같습니다.

 

1. 코드 간결성

: async/await는 비동기 코드를 마치 동기 코드처럼 직관적으로 작성할 수 있어서 깔끔한 코드 작성이 가능합니다.

 

2. 에러 처리

: async/await는 전통적인 try-catch 문을 사용하여 에러 처리를 할 수 있어, 개발자가 보다 쉽게 에러 핸들링이 가능하다.

 

3. 병렬 실행

: Promise.all과 함께 async/await를 사용하면 여러 비동기 작업을 병렬로 실행할 수 있어 효율적인 작업 처리가 가능합니다.

 

 

 

 async/await를 활용하면 비동기 코드 작성이 더 간편해지고, 가독성이 좋아져 코드의 복잡성 문제를 해결하고 에러 처리를 쉽게 할 수 있다. 이를 통해 개발자들은 비동기 작업을 적절하게 조절하고 웹 애플리케이션의 성능을 최적화할 수 있다.

 

 

 

 

 

 

반응형