웹서버는 무슨 일을 할까?

컴퓨터와 이메일이 없었던 시절 이야기

post옛날에 컴퓨터가 없었던 시절에는 우체국과 집배원이 있었습니다. 주로 사랑하는 연인들이 편지를 주고 받거나 멀리 타향에 나간 자식들이 부모님들께 안부인사를 묻기도 하고 초등학교에서는 어린이들이 6월이 되면 고사리 같은 손으로 군인아저씨들을 위한 위문편지를 쓰기도 했지요.

편지를 보내려면 우선 문방구에서 예쁜 편지지를 몇 장 사야 합니다. 그리고 밤새 썻다 지웠다를 반복하면서 편지지에 정자로 또는 자신만의 필체로 가지런히 글을 쓰고 반의 반으로 접어 하얀 편지 봉투에 넣고 풀을 발라줍니다. 미리 사둔 우표를 한 장 꺼내서 침을 발라 가지런히 붙여주고 나면 편안히 잠들 수 있었습니다. 이렇게 쓴 편지는 집 앞에 빨간색 우체통에 넣어 주어야 합니다. 지금은 빨간색 우체통을 찾기가 어렵지요? 옛날에는 집 앞 골목골목 마다 눈에 잘 띄는 곳에 하나씩은 꼭 있었답니다.

우체통에 넣은 편지는 아침저녁으로 집배원이 우체국으로 수거해 갑니다. 한 곳에 모여진 편지는 모양도 크기도 모두 제각각입니다. 이것은 이제 우편물이 되고 우표를 잘 붙여 주었는지 확인 도장을 찍은 후에 보내고자 하는 주소지 관할 우체국에 모듬별로 보내지게 됩니다. 오후쯤 되면 집배원이 동네를 돌면서 "편지요!"라고 소리치며 친절하게 편지를 가져다 주셨지요.


웹 서버는 우체국

오늘날에는 개인 컴퓨터(Personal Computer)가 있습니다. 그리고 이메일(Electronic Mail:전자 우편)로 글을 씁니다. 편집기로 글을 쓴 후에 "보내기" 버튼 또는 "전송" 버튼만 클릭하면 곧바로 상대방 컴퓨터에 메일이 전해집니다. 이메일이 없었던 시절과는 비교할 수 없을 만큼 빠르고 편리하지요? 하지만 궁금증이 생겼습니다.

"메일을 받는 상대방이 컴퓨터를 켜지 않았다면 어떻게 메일을 받을 수 있을까?"

해결책은 우체국 역할을 하는 중간 컴퓨터(server,서버)가 필요한 것입니다. 이것은 개인이 혼자 쓰는 컴퓨터가 아니고 여러 사람이 함께 써야 하기 때문에 24시간 내내 쉬지 않고 작동합니다. 여러분은 이메일을 "보냈다."라고 생각하지만 사실은 보낸 것이 아니고 함께 쓰는 컴퓨터에 "올려 두었다." 또는 "그 컴퓨터에 따로 저장해 두었다."(move and save or storage)가 맞는 말입니다.

이제 메일을 받으려면 항상 켜져 있는 컴퓨터(서버)에 일단 접속해서 내게 보내진 메일이 있는지 찾아보아야 할 것입니다. 그리고 있다면 열어 보아야겠지요? 이때에도 (편지를)열어본다는 표현보다는 우리말로 내려 받기 즉 "다운로드"라고 해야 정확한 의미가 됩니다. 이제 업로드(upload)와 다운로드(download)의 의미를 정확히 아실 수 있겠지요?

정리해보면 "전송"(submit)이라는 말은 (서류 등을)제출한다는 뜻이기에 메일을 보낸 사람이 보내기 버튼을 클릭하는 행동에 포함되어 있고 "업로드"는 문서가 소형 컴퓨터에서 대형 컴퓨터(서버)로 옮겨졌기(to move data to a larger computer system from a smaller one) 때문에 받는 사람은 서버에 접속(access 또는 connect)해서 저장된 문서를 다시 소형 컴퓨터(내 컴퓨터)로 "다운로드" 받아 열어보아야 하는 일련의 과정으로 이해하시면 됩니다.

결국 홈페이지를 만든다는 것도 서버에 메일이 아닌 다른 문서를 저장해 두고 방문자에게 내가 만든 문서를 보여주면 되는 것이지요. 어렵지 않지요? 메일이 아닌 다른 문서라는 것은 HTML(하이퍼 텍스트 마크업 언어,Hyper Text Markup Language) 문서를 말합니다. 지금은 몰라도 됩니다. XE를 설치하고 여러 가지 할 일들이 아직 많이 남아 있습니다. HTML 문서 만들기는 그때가서 배워보도록 합시다.

server


그러면 XE를 설치하기 위해서 서버 컴퓨터를 사야 하나요?

정답은 "아니오!"입니다. 정답이라고까지 표현하기 뭐하지만 이곳은 XE 스쿨입니다. XE 스쿨에 회원가입 하시면 그때부터 여러분은 XE 스쿨 학생이 됩니다. 학생이 무슨 돈으로 고가의 서버를 살 수 있겠어요...^^ 그리고 서버 컴퓨터를 사게 되면 서버 프로그램의 설치와 운용 등은 이곳에서 이야기 하지 않는데 무슨 수로 서버를 운영하시려구요? 그래서 일단은 "아니오!"가 정답이 됩니다.

"호스팅"이라는 단어가 이때 등장합니다. 호스팅이란 뭘까?

서버 컴퓨터를 혼자 쓰기에는 비용이 너무 비싸기 때문에 여러 사람이 함께 쓸 수 있으면 비용도 그만큼 절감이 되겠지요? 분명 컴퓨터는 한 대 이지만 하드디스크를 일정한 크기만큼 가상으로 나누어서 다수의 이용자들에게 일정기간 동안 임대해 주는 서비스를 호스팅 서비스라고 말하고, 이러한 서비스를 제공하는 회사가 24시간 항시 관리하기 때문에 전기료 걱정이 없는 아주 편리하고 유용한 서비스라고 말할 수 있습니다. 하지만 불편한 점도 있어요. 여러 사람이 공용으로 쓰기 때문에 자신에게 꼭 맞는 프로그램을 설치하거나 또는 개별적인 서버 운영은 할 수 없습니다.

가장 일반적이고 보편화된 홈페이지 제작 프로그램을 설치하고 운영해야 하는 불편함이 있을 수 있겠고 홈페이지를 운영하다보면 메일을 보내고 받는 과정도 꼭 필요한데 여러 사람이 함께 쓰다보니 어떤 사람은 광고성 메일을 수천통 보내려고 하는 경우도 생긴다는 것이지요. 이런 경우 메일을 받아주어야 할 포탈서비스 업체(다음, 네이버 등)들이 메일을 받아 주지 않는 경우가 발생하고 그 한 사람 때문에 같은 서버를 이용하는 다른 사람도 피해를 볼 수 있습니다. 이런 경우 별도의 메일서버를 임대해 이용하면 가능하겠지요? 그래서 호스팅에는 여러 가지 종류가 다양하게 존재합니다. 일반적인 웹 호스팅이 있고, 메일을 전문적으로 취급하는 메일서버 또는 웹메일 호스팅, 그리고 서버 한 대를 통째로 임대해 쓸 수 있는 서버 호스팅 등 그 종류도 다양합니다.

자, 우리는 어찌됐건 호스팅 서비스를 이용할 것입니다. 용량에 따라 무료 또는 몇 만원이면 1년 동안 열심히 쓸 수 있는 호스팅 서비스를 이용할 것이고, 분명히 먼저 이해해야 할 부분은 메일수신 문제에 있어서 ‘네이버’는 되고 ‘다음’(한메일)은 안되고 하는 문제가 발생할 수 있는데 이것은 XE 프로그램의 문제가 아니고 호스팅을 이용하는 단계에서는 어쩔 수 없이 겪게 되는 어려움이라고만 이해하시면 됩니다. 일단 먼저 XE를 설치하고 운영하는 방법을 공부한 후에 기회가 되면 XE 스쿨 고급과정에서 별도의 메일계정과 연결하여 메일을 주고 받는 방법에 대해 공부할 수 있으면 좋겠습니다.