서버 · 클라이언트 · 클라우드
이 장에서 배우는 것 서버가 무엇인지(그리고 무엇이 아닌지), 클라우드와 온프렘의 차이, 그리고 하이퍼팀즈(HyperTeams)는 왜 내 컴퓨터에서 돌고 Connect는 왜 웹에 있는지.
서버는 역할 이름입니다
특별한 기계가 아닙니다. 요청을 받아 답해주는 쪽을 서버, 요청하는 쪽을 클라이언트라고 부를 뿐입니다.
graph TD
A["클라이언트<br/>브라우저 · 앱 · 에이전트"] -->|"요청"| B["서버<br/>답해주는 프로그램"]
B -->|"응답"| A지금 쓰는 노트북에서 프로그램 하나를 켜면 그 노트북이 서버입니다. HyperTeams를 켠 순간 벌어지는 일이 정확히 그것입니다 — 내 컴퓨터가 나 자신에게 서버 노릇을 하고, 브라우저가 클라이언트가 됩니다.
그래서 처음 켜고 접속하기가 브라우저로
localhost:27777을 열라고 합니다. 내 컴퓨터에 내가 접속하는 것입니다.
클라우드는 남의 컴퓨터입니다
농담처럼 도는 말이지만 정확한 정의입니다. 남이 관리하는 컴퓨터를 빌려 쓰는 것이 클라우드입니다.
| 온프레미스(온프렘) | 클라우드 | |
|---|---|---|
| 기계 | 우리가 삼 | 빌림 |
| 관리 | 우리가 | 사업자가 |
| 비용 | 처음에 크게 | 매달 |
| 데이터 | 우리 안에 | 사업자 시설에 |
| 늘리기 | 사서 설치 | 설정 몇 번 |
규제 산업에서 온프렘을 고집하는 이유는 맨 아래에서 셋째 줄입니다. 성능이 아니라 데이터가 어디에 있느냐의 문제입니다 — 규제와 컴플라이언스와 이어집니다.
SaaS — 빌려 쓰는 것의 가장 흔한 형태
빌리는 층위에 따라 이름이 다릅니다. 실무에서 마주치는 것은 대개 맨 아래입니다.
| 층위 | 빌리는 것 | 예 |
|---|---|---|
| IaaS | 빈 컴퓨터 | AWS EC2 |
| PaaS | 프로그램 돌릴 자리 | Vercel |
| SaaS | 완성된 서비스 | Slack · Notion · HyperTeams Connect |
SaaS는 설치가 없습니다. 계정을 만들면 끝입니다. 대신 데이터가 사업자 쪽에 있습니다.
그래서 두 제품이 갈립니다
이 매뉴얼이 다루는 두 제품의 성격 차이가 여기서 나옵니다.
| HyperTeams | Connect | |
|---|---|---|
| 어디서 도나 | 내 컴퓨터 | 웹(SaaS) |
| 설치 | 필요 | 없음 |
| 접속 | localhost:27777 | 브라우저 주소 |
| 내 파일 | 직접 만짐 | 올린 것만 |
| 컴퓨터를 꺼두면 | 멈춤 | 상관없음 |
"내 컴퓨터를 시키는 것"과 "웹에서 일을 맡기는 것"의 차이입니다. 둘 다 쓰는 조직이면 시스템 연결하기로 이어 붙입니다 — Connect가 클라이언트가 되고 내 컴퓨터가 서버가 되는 구조입니다.
온프렘 배포라는 선택지
Connect 자체를 우리 회사 서버에 설치해 돌리는 방식도 있습니다. SaaS의 편함을 포기하고 데이터를 우리 안에 두는 선택입니다. 보안 검토가 거기까지 요구하는 조직이 고르는 길입니다(보안 검토를 위한 한 장).
자주 하는 오해
"서버라면 서버실에 있는 큰 기계 아닌가요"
역할 이름입니다. 큰 기계가 서버 노릇을 자주 할 뿐이고, 노트북도 프로그램을 켜면 서버입니다.
"클라우드에 올리면 우리가 관리 안 해도 되나요"
기계는 그렇지만 설정과 권한은 우리 몫입니다. 사고의 상당수가 잘못 열어둔 권한에서 납니다 — 계정 · 비밀번호 · API 키 · 권한에서 다시 봅니다.
확인
1. 내 노트북이 서버가 될 수 있습니까?
답
됩니다. 서버는 기계 종류가 아니라 "요청을 받아 답하는 역할"입니다. HyperTeams를 켜면 그 노트북이 서버입니다.
2. 온프렘을 고르는 가장 큰 이유는?
답
데이터가 어디에 있느냐입니다. 규제나 보안 정책이 데이터의 물리적 위치를 요구할 때 온프렘을 고릅니다.
3. HyperTeams와 Connect의 가장 큰 구조적 차이는?
답
도는 자리입니다. HyperTeams는 내 컴퓨터에서 돌아 컴퓨터를 꺼두면 멈추고, Connect는 웹에서 돌아 상관없습니다.
다음은 클라이언트와 서버가 실제로 주고받는 말입니다 → 요청과 응답 — HTTP