들어가며
저는 개발을 배우며 가장 어려웠던 점이. 처음 코딩을 접하고 많은 글과 영상을 접했을때. 평소에 보던 글의 종류도 아닐뿐더러 어려운 단어들이 많아서 이해하기 힘들었고 더욱 진입장벽이 크다고 느꼈습니다. 그래서 전 처음 접해보시는 분들도 한번쯤 편하게 읽어보실 수 있도록 비유법을 많이 사용하여 최대한 편하게 이야기 해보듯 글을 적어보려고 합니다. 그럼 넘어갈게요.
서버란?
클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템으로 컴퓨터 프로그램(server program) 또는 장치를 의미한다. 라고 사전에 명시되어 있습니다. 하지만 입문자분들이 서버를 좀 어렵게 생각하시던데. 위의 사진처럼 서버는 뭔가 특별한줄 아시는 분들이 많으시더라구요 서버란 쉽게 말해서
지금 만지고 있는 컴퓨터는 서버입니다. tistory라는 클라이언트에 접속 할 수 있게 해주는게 여러분 컴퓨터(PC)죠. 사진에 있는 server아이콘을 컴퓨터로 바꿔서 생각해보세요, 간단하쥬?
음.. 만약 개발자를 목표로 하고 계시다면 한번쯤은 배포라는 말을 들어보실텐데요. 배포라는게 플레이스토어에 가보시면 많은 어플들이 있죠? 이처럼 사람들이 하나의 프로그램을 사용 및 접근 할 수 있도록 하는 것이 배포입니다!
앞서 말한것처럼 배포를 예시로 ( 서버 == PC )라는 걸 생각하면, 다른 사람 컴퓨터에 우리가 개발하던걸 옮겨서 해당 컴퓨터에 여러사람이 쉽게 접속 할 수 있는게 같은 원리입니다.
이를 통해 우리는 server즉 사람들에게 서비스를 제공하는 것이 되었죠. 서버가 어느정도 이해 되셨나요..? 넘어갈게요.
네트워크란?
두개 이상의 컴퓨터나 장치를 연결하여 데이터를 공유하고 통신할 수 있도록 하는 시스템.
즉 우리가 이렇게 블로그를 볼 수 있는 것. 카톡으로 대화라는 데이터를 주고 받을 수 있게 해주는 것을 네트워크라고 하면 될 것 같아요.
좀 자세하게 생각하면. 우리 컴퓨터에 LAN선이 있죠? 이것도 네트워크의 단위중 하나에요
네트워크는 크게 4가지로 나눌 수 있는데요
- WAN( Wide Area Network ): 광역 네트워크
- MAN( Metropolitan Area Network ): 수도권 네트워크
- LAN( Local Area Network ): 근거리 네트워크
- PAN( Personal Area Network ): 개인 네트워크
이중에서 LAN만 좀 익숙하죠? 그냥 이런게 있고 어떤것이 영역이 더 넒은 네트워크인지만 아시면 될 것 같아요~, 영어해석하면 다 나오긴 해요. 우선 넘어갈게요.
스토리지
데이터를 저장할 수 있는 공간을 의미합니다. 예시로는 SSD, HD, DAS, 구글 드라이브와 같이 데이터를 저장할 수 있는건 모두 스토리지라고 생각하시면 됩니다! 즉 비휘발성의 기억 장치이죠.
주로 저같은 초보 실무 개발자들은 다스(DAS)와 나스(NAS)에 대해서 직접 설치하지는 않지만 주변에서 많이 들리는데요, 다스와 나스에 대해서 알아볼게요.
- DAS: Direct Attachted Storage 직접 연결 스토리지인데요, 말 그대로 서버와 하드웨어는 직접 연결하는 외장하드와 같아요!
- NAS: Networt Attached Storage 네트워크 연결 스토인데요, 이름에서 알 수 있듯 DAS와 달리 네트워크 즉 LAN이나 이더넷 등으로 연결하는 서버라고 생각하면 좋아요!
이상 비유를 통해서 기초 개념에 정리해보았어요, 다들 공부 열심히해서 휼륭한 개발자가 되시길 바랄게요 ~