본문 바로가기

Web Programming

(56)
높은 성능의 웹사이트 만들기 Building High Performance Websites (원문 : https://divshot.com/blog/web-performance/building-high-performance-websites) 원문의 내용을 살펴보면 웹사이트의 성능(Performance)가 얼마나 중요한지에 대해서 이야기를 하고 있다. 웹사이트가 로드(Load)되는데 까지 시간이 비즈니스에 중요한 영향을 미친다고 언급하고 있다. 실제로 이런 성능의 개선이 비즈니스에 영향을 미치는 지는 검색 엔진 랭킹으로 대변이 된다고 하는데 이는 How Website Speed Actually Impacts Search Ranking이라는 내용을 살펴보면 된다. CDN 을 쓴다던가 혹은 GZIP 을 통한 압축으로 텍스트 컨텐츠들의 용량..
Node.js 로 하는 웹 프레임워크 Express.js unopinionated 에 대한 좋은 표현이 잘 떠오르지를 않는다. 자기 주장을 내세우지 않는 이런 뜻이라고 봐야하는데.. 이게 뭔가 의존성이 적다는 건지.. 어떤 제약사항이 적다는 건지 뭔지 표현은 안되지만.. 작고 빠른 웹 프레임워크를 말한다고 하는 express.js 에 대해서 배우기를 시작하게 되었다. 먼저 Java 나 ASP.NET 를 알고 사용한지가 꽤 오래 되었으니 비교를 한번 해보자면 개인적인 소감은 이랬던것 같다. 미묘한 차이이긴 하지만 일단 설치가 매우 간단하다는 점..? 물론 Java 나 ASP.NET 도 어렵지는 않지만.. ^^ 아직 Express.js 와 비교하기엔 다소 어려운 단계인 것 같다. 먼저 Getting started 를 수행해보면 정말 어렵지 않게 Hello Worl..
Nodeschool 공부하기 Nodejs 를 처음 접하고 나서 뭘 어떻게 해야할지 몰랐는데 nodejs.org 페이지에서도 이곳에 대한 설명이 되어있다. 열심히 공부하라면서 좋은 곳이라고 알려주길래 곧장 여길로 왔다. 그리고 만난건 저기 보이는 Tutorials 이었다. 여태 배웠던 방법하고는 다소 다르지만.. 모처럼 노트북에 centos 를 설치해둔 덕에 쉽게 사용할 수 있게 되었다. 물론 어떤 환경에서도 딱히 어려울 건 없겠지만.. npm 이라는 걸 설치하고 npm 을 통해서 learnyounode 라는 설치하게 되면 가상의 nodejs 선생님 같은게 생긴다. 하지만 이 선생님이 별로 안 친절(?) 할 줄은 몰랐지만 말이다. 아주 초짜에게 알려주는 힌트 치고는 다소 어려웠지만.. 그래도 우여 곡절 끝에 주어진 과제들을 다 끝내고..
node.js 설치와 간단 실험 Node.js 에 대해서 들어본 때가 언제인가를 짚어보면 한 3~4년전이었던거 같다. 그때는 아주 생소한? 그런 플랫폼? 프레임워크? 였다. 뭐라고 말하기 다소 어렵지만 그때 당시로 치면 "javascript 를 통해서 서버사이드 프로그래밍이 가능하도록 구현한 것이다" 라고 이해했던 것 같다. 거기에 비동기식 병렬처리에 대한 이슈도 들었던 것 같고.. 잉여시간이 넘치는 터라 node.js 에 대해서 좀 더 공부를 함이 좋겠다는 생각이 들었다. 약간의 삽질이 있었다. 어떤 언어든 간에 가장 힘든게 개발환경 설정인 것 같다. 처음에는 구글링을 통해서 검색을 했다. CentOS 에 설치를 하는 것들 위주로 찾아 봤다. 뭘 설치해야 할것들이 너무 많은데? 또한 댓글을 통해서도 뭔가 부족한 부분에 대해서 이야기 ..
Codeigniter 로 만드는 로그인 세션 관리 Controller 제목은 거창한데 내용은 그렇게 복잡하지 않다. 다만 이 방법보다 더 나은 방법도 많겠지만 간편하게 적용할 수 있는 방법이기에 함께 공유를 해본다. 먼저 웹사이트를 구축하는데 필요한 가장 기본적이고 중요한 것중에 하나가 로그인 처리이다. 어느 웹 어플리케이션이든 대부분 로그인 처리에 있어서 DB와 Sesssion 을 사용하여 이를 검증하고 저장하는 방법을 선택한다. 방법 자체가 신선하거나 하지는 않지만 기본적인 개념을 확립하는데 정말 많은 도움이 된다. 예전에 ASP.NET MVC3 라는 기술을 이용해서 웹사이트를 개발할때 사용했던 방법인데 이를 Codeigniter 에 맞추어서 변형 시켜 보았다. 전제를 MVC 구조의 웹 프로그래밍을 한다고 볼때 Controller 마다 세션에 대한 검사를 하거나 정보들..
Redis 원격 접속을 위한 설정 Redis 를 사용하여야 할 이슈가 아직은 없지만 일단은 설치하고 설정하는 것들에 대해서 익혀보기로 했다. 일단 앞서 Amazon Linux 환경에서의 설치가 기존의 Redis 패키지의 쉘 스크립트로 동작하지 않는 다는 것도 알았으니.. 어쨌든 이후의 설정하는 것도 순탄치 않을 것이라는 생각은 들었다. 이 때문에 그런지 너무 메뉴얼이나 이런것들에 의존하지 않고 근본적으로 문제가 되는 부분들을 차츰 차츰 알아가는 것이 좋다고 생각했다. 위의 Security Group 을 살펴보면 Redis 에서 사용하는 6379 포트에 대한 Inbound 가 가능하도록 적용시켜 주었다. 하지만 Client 에서 Redis Server 로의 접근이 불가 했다. Connection Refused 라는 메시지와 함께. 거의 C..
CodeIgniter 사용하기 : 2. 개발 환경과 기본 실습 시작 책 제목이 "만들면서 배우는 CodeIgniter 프레임워크" 이다. 만들려면 자기만의 개발 도구들이 필요한데.. 하는 생각이 가장 먼저 들었다. 사실 이전부터 준비 해봤지만 한번 더 정리를 하자면 LAMP (Linux Apache MySQL PHP) 를 사용하는 환경이 갖춰 져야하는 것은 당연하고 별도로 IDE 나 간편한 에디터 들을 먼저 찾아야 했다. puttyAptana Studio 3MySQL Workbench GUI Tool 정도를 설치하기로 했다. 선배님들은 Aptana 보다 터미널에서 vi 를 쓰는게 더 좋다고 하셨지만.. 음.. 계속 IDE를 써서 그런지 까만 화면이 그닥 익숙하지는 않았다. 저마나 개발의 방식이 있으니 존중해 주시지 않을까? 하는 생각에 일단은 개기고 이렇게 먼저 IDE ..
CodeIgniter 사용하기 : 1. 환경설정과 HelloWorld PHP 를 사용하여 개발해야하니.. 대략적인 문법들에 대해서는 몇 번의 인스턴트식 개발을 통해서 익혔다고 치지만.. 아주 기초적인 코딩 스타일이나 규칙들을 익히기에는 애로사항들이 많이 있다. 일단 기본적인 함수들이나 이런것들은 사용하면서 익혀도 되는데 아직은 경험을 통해서 나오는 것들은 쉽사리 흉내 내기가 어렵다. 대신 생산성을 높이기 위해서 필요한 것들이 프레임워크 인데.. PHP 프레임워크라고 불리우는 CodeIgniter 를 접하게 되었다. 시작을 책으로 한 것은 아니고 한국 CodeIgniter 사용자 포럼 (http://www.cikorea.net/index.php) 이었다. 한글 메뉴얼도 정리가 잘 되어있고 (번역문의 어투가 안 진지 해서 좋았다) 포럼에서 질의 응답 내용들도 비교적 풍부한 것..