c/s환경과 그전의 메인프레임하고 단말기하고의 환경이 근본적으로 뭐가 틀리는지를 모르겠어요.
따지고 보자면 메인프레임을 서버라고 할 수 있고 단말기를 클라이언트라고 할 수 있는거 아닌가요?
그렇다면 이것도 c/s 환경 아닌가요?
PC에서는 뭘처리를 해주고(전 뭘처리해주는지 잘 모릅니다) 터미널에서는 처리를
못해주는게 근본적으로 틀린점인가요?
오랜만에 메인 프레임 얘기를 들어보는군요.
예전에 (그때가 84-5년 정도 된듯...) 메인프레임에 터미널을 붙여 쓸때는 대부분 dummy terminal 을 이용했었습니다. 주로 X-windows 프로토콜을 이용한 그래픽 터미널을 사용하기도 했었고, 그보다는 값싼 text-based dummy terminal 을 이용한 기억이 나는군요.
이때는 당연히 모든 프로그램들이 서버에서 돌아가고, 출력화면만 터미널로 가게되며, 입력도 터미널에서 받지만 처리는 당연히 서버에서 처리됩니다.
요즘은 좀 다르죠. dummy terminal 은 거의 찾을수 없습니다. 대부분 PC 를 터미널로 이용하죠. 이게 가격이 오히러 싸니까 말이죠. 그리고 일정 부분의 작업은 클라이언트에서 처리되어서 서버로 올라가는 경우가 많습니다. 일종의 Intelligent terminal 의 역할을 해준다고 생각할수 있겠죠.
이런 정도의 차이점을 제외하고는 글쎄요. C/S 환경이라는게 예전이나 지금이나 차이가 있을련가 -.-;;;
클라이언트에서 처리되는 일정부분의 작업이란건 어떤게있는건지 예를 좀 들어주세요.
더미터미널에서는 그 작업은 처리못하고 메인프레임에서
대신 처리 해줍니까?
어떤 연산이 필요한 작업이 있다고 가정합니다.
메인프레임 환경하에서는 모든 client에 대해서 연산작업을 서버가 담당하였습니다. 그런데 클라이언트가 성능이 좋아지면서 충분히 클라이언트가 그 계산을 담당할 수 있습니다.
-------------------------------------------
업종이 업종이다 보니 온라인 게임예를 들도록 하겠습니다.
A라는 유저가 B라는 스킬을 사용할 때 데미지 계산이
Damage -> A.STR * A.DEX
라고 합시다. (실제로는 훨씬 복잡하겠죠?..
그러면 모든 유저에 대해서 계산을 해야 하는데. 각 클라이언트에서 미리 데미지를 계산해서 보내줄 수 있다면 서버의 부하가 줄어들겠죠
(물론 이 방법은 보안상 큰 문제가 있습니다만)
---------------------------------------------
간단한 예를 정황도 없이 들어서 이해가 쉬우실지 모르겠습니다.
이 부분은 C/S를 설명하는 책에 훨씬 쉽게 설명이 되어 있을 겁니다. 개인적으로 추천하는 도서는 Survival Guide for Client/Server dummies.. 입니다.