요즘 구글링을 좀 하다보면 드는 생각인데, github pages를 이용한 블로그들이 좀 눈에 띄는 것 같다. 본인은 어떤 키워드에 대해 구글링을 했을 때, 다음 블로그가 나오면 무조건 거르고, 네이버 블로그가 나오면 일단 들어가서 스크롤을 쭉 내려본다. 그리고 우리가 높은 확률로 마주하는 것은...
신뢰의 이모티콘이 친구다.. 물론 이는 대체로 가십거리일 때의 이야기이지만, 무슨 라플라스 변환 표 구하는 것도 아니고 어떠한.. 전문 지식(최소 학부 수준)을 네이버 블로그에서 얻는다면 그것도 좀 문제가 있어 보인다.아니라고? 해서 티스토리..가 좀 더 전문적으로 보일 확률이 있는데, 진짜! 개발자라면! Jekyll을 이용해서 블로깅을 할 수 있다. 이제 내가 당신에게 그것을 어떻게 설명해 주도록 하겠다. 잘 따라오도록 하여라.
Jekyll is a simple, blog-aware, static site generator for personal, project, or organization sites. Written in Ruby by Tom Preston-Werner, GitHub's co-founder, it is distributed under the open source MIT license.
(영문 위키피디아 발췌)
진짜.. 본인도 영어 3등급을 받은 영포자라고 할 수 있다. 하지만 본인이 재수하던 시절, 강순동(영어 선생님임) 선생님은 이렇게 말씀하셨다.
that 부터 버려삐라!
물론 저 글에는 that
이 없다. 아마 중요한 부분만 해석하라는 뜻으로 말씀하셨던 것 같은데, 차근차근 중요한 단어를 짚어보자.
간단하고, 블로그에 관심 많고, 정적인 사이트 생성기라고 한다. 앞의 두 개는 쉽게 이해가 가는 데, 정적인 사이트가 대관절 무엇일까? 물론 앞에서 잘 설명해 주었을 수도 있지만, 원래 탑솔러는 남을 잘 믿지 않는다. 해서 내가 다시 설명해 주도록 하겠다.
위 사진은 정적 웹 페이지
의 구동 방식을 나타낸 것인데, 왼쪽에 보이는 PC가 사용자고, 오른쪽에 저 첩첩첩 쌓여있는것이 웹 서버다. 사용자는 WWW를 통해 웹 페이지에 무엇가를 요청(Request)하게 된다. 이 때 웹 서버는 따로 어떤 작업을 하지 않고 그대로 HTML 문서를 출력해주게 된다. 대표적으로 메모장을 켜서 뭐시기.html
파일을 만들어서 기본적인 HTML 문서를 만들면? 그게 바로 정적 웹 페이지가 된다. 그렇다면 동적 웹 페이지도 있을까?
물론 있다. 마찬가지로 위 사진은 동적 웹 페이지
의 구동 방식을 나타낸 것이고, 똑같이 왼쪽의 PC가 사용자고, 오른쪽의 첩첩첩이 웹 서버다. 여기서 다른 것은, 웹 서버는 따로 데이터베이스 서버를 두어서, 사용자가 어떤 페이지를 요청했을 때 내부 프로세싱을 거쳐 HTML 문서를 작성한 후에 그 문서를 출력해주게 된다.(django를 활용해 만들었던 페이지들이 그 예다.)
이러한 구조적 차이로 인해 정적 웹 페이지
와 동적 웹 페이지
의 장단점이 발생하는데,
정적 웹 페이지
- 장점
- 로딩 속도가 빠르다(따로 뭔가 처리할 필요 없이 요청한 페이지를 바로 출력하면 됨).
- 유지비가 적게 든다(데이터베이스 서버 필요 없음).
- 단점
- 비전문가가 사용하기에 쉽지 않다.
- 서비스가 한정적이다(이미 저장된 정보만 보여줄 수 있음).
동적 웹 페이지
- 장점
- 서버 안에 저장된 데이터들을 통해 여러 서비스를 할 수 있다.
- 비전문가가 사용하기에 편리하다(네이버, 다음 블로그 등).
- 유지보수에 용이하다.
- 단점
- 느리다(사용자가 요청하면 데이터베이스 서버에서 데이터를 가공해야 함).
- 비싸다(추가적으로 앱 서버를 두어야 함).
다시 Jekyll 이야기로 돌아가서, 왜 정적 웹 페이지 이야기가 나왔느냐 하면, Github Pages는 정적 웹 페이지만 호스팅 할 수 있는데, 이는 정적 웹 페이지 생성기
인 Jekyll과 아주 잘 어울린다! 사실 뭐가 먼전지는 잘 모르겠다 닭vs달걀 그리고 다음 키워드는 바로.. Ruby
다.
이름부터 예쁜 이 언어는.. 일본인이 만들었다!