상태 저장 및 상태 비 저장 서비스 (RPM)

전송 : https://www.cnblogs.com/xiangkejin/p/9010516.html

 

- 서비스 상태, 또는에 기초하여 결정되는, 무 서비스있다 프로그램 서버에 대한 것인지의 여부 서버 컨텍스트를 포함하는지 이니시에이터로부터 두 개의 동일한 요청.

요청의 상태, 서버는 일반적으로 각 요청이 이전 기본 요청 정보를 사용할 수 있습니다, 관련 정보 요청을 저장해야합니다.

무 상태 요청은 서버 프로세스 자체가 저장되어있는 모든의 요청에 의해 운반 정보 및 기타 서버를 처리 할 수 ​​있어야하고, 공통 정보는 모든 요청에 ​​대해 사용할 수 있습니다.

 

비교

상태 기반 서비스는 종종 트랜잭션 구현하는 데 사용됩니다 (하지 유일한 방법은 아래의 추가 프로그램이 있습니다). 공통의 예를 인용, 쇼핑몰에서 제품을 구입할 수 있습니다. 등등 주문, 결제 및 확인을 위해 쇼핑 카트, 여러 단계에 통과해야합니다.

HTTP 프로토콜 자체가 상태이기 때문에, 상태 기반 서비스를 달성하기 위해 때문에, 우리는 몇 가지 별도의 프로그램이 필요합니다. 지불은, 다음의 쇼핑 카트에서 상품 정보를 제거 할 때 세션의 가장 일반적인 예는 사용자가 선택한 상품 (쇼핑 카트), 세션에 저장 


주로 고려하는 확장 성에서, 비 상태로 설계 서비스를합니다.

서버가 상태 인 경우, 클라이언트에 대한, 당신은 그 수에 서버에 요청을 보낼 수 로드 밸런싱 달성하기 위해 다른 수단을 확장의 수준을 .

서버 상태 인 경우 클라이언트가 항상라는 작업 서버에 같은 요청을 넣을 필요가 있기 때문에, 그것은 쉽게 달성 될 수 없다 " 세션 마이그레이션" 이 문제를 해결하기 위해, 즉, 다른 프로그램을 

6486d16d-38c6-38de-837f-637ff99c30d4.png

세 개의 세션과 쿠키를 

세션 쿠키가 달성 트랜잭션을 기반으로 할 수 고려 될 수있다, 세션 상태이며, 무 쿠키가 

넷이나 거래 방법을 구현 무 

반드시이 문제의 상태를 달성하기 위해 서비스를 사용하지 않는,이 문서는 추가로 몇 가지 제공 프로그램 참조 
예로써 장면의 여러 제출을 인용 : 사용자가 제출 한 두 페이지로 나뉘어 많은 양의 데이터를 제출해야 

d2a571e3-dea4-3fad-bf5b-e896730ebf10.png

두 번 HTTP 요청에 관련된 여기를 먼저 1,2,3 필드를 제출, 두 번째 필드는 제출 4,5,6 

후 처음으로 제출 된 데이터를 제거하고, 둘째, 세션을 사용하여이 요구 사항을 달성하기 쉽고, 데이터 서버는 세션에 저장된 첫 번째를 제출하고 적절하게 두 번째 형태로 반환해야 데이터 집합의 제출 후 함께 데이터베이스에 저장 될 수 

도있는 세션을 달성 할 수 있고, 서버는 첫 번째 요구를 수신 반환에서 처음으로 두 가지 형태의 숨겨진 요소로서 데이터는,이 사용자 2가 제출 된 경우, 내재적으로 다시 처음으로 데이터를 제출, 서버의 모든 데이터를 데이터베이스에 
HTML5를 사용하여, 당신은 또한 더 클라이언트 데이터가 처음에 sessionStorage에 제출 저장할 수 있습니다, 최적화 할 수 있습니다 
쿠키 것은 유사한 이유는, 같은 달성,하지만 매우 좋지 않다 될 수있다 

일반적으로, 대안의 3 종류 (숨겨진 양식 요소는 sessionStorage, 쿠키)는 비 저장 서비스를 달성하기 위해, 서버 측에서 데이터의 임시 저장을 피했다. 본질적으로,이 세 가지 프로그램의 요구는이 문서의 시작 부분의 정의에 맞춰 필요한 모든 데이터를 포함하는 

상태 기반 서비스가 아닌 상태 서비스로 변환됩니다 V. 

에 대한 모든 정보뿐만 아니라이 문서의 시작 부분의 정의에 따라, 또한 요청이 또 다른 방법은, 서비스 상태없이 구현 될 수있는 하나의 장소에서, 즉 정보를 공유하고, 상기 프리젠 스 서버와 독립적가 
예 또는 동일한 방식으로 세션을 수행하기 위해 서버에 저장된 데이터를 각각 감소 클라이언트는 데이터 (트래픽을 저장하기 위해) 양의 전송을 요청하지만, 세션은 중앙 저장된 세션에서 별도의 층, 예를 들어. 이 경우, 또한 서버 상태 비, 당신은 수평 확장 할 수있는 

47bd72bf-1162-33d2-be07-0ddcebdc633a.png


VI 개요 
필요가 확장의 수준을 고려하지 때, 상태 기반 서비스가 트랜잭션을 구현하는 비교적 쉽게, 더 나은 선택입니다 
수 있습니다 비 저장 서비스의 장점은 트랜잭션을 구현할 때 편리하게 수평 확장,하지만, 몇 가지 추가 작업을 할 필요가 
무 상태 서비스로 변환 서비스의 상태가있을 것입니다, 세션 등을 벗겨 

추천

출처www.cnblogs.com/helios-fz/p/10988174.html