본문 바로가기
[웹기본개념] 웹서버와 웹어플리케이션서버 [웹서버와 웹어플리케이션서버 차이]- 같은 서버이지만 원활한 서비스를 하기위해 서버의 역할을 나누어놓음- 같이 처리할 수는 있으나 규모가 일정 이상 커졌을 때 서버의 역할을 나누어 성능 분산 효과를 보기위해 개념 사용 [웹서버란]- 웹서버 : 정적인 파일(.html, js 파일, 이미지 파일 등)을 제공하기위한 서버, HTTP 프로토콜에 의해 제공- 클라이언트(웹브라우저)에게 컨텐츠(정적인파일)를 제공하는 서버- 정적인 파일로만 처리 가능한 것은 WAS로 요청을 넘기지않고 바로 요청 처리함 [웹어플리케이션서버란]- 웹어플리케이션서버(WAS) : 동적인 데이터를 제공하기위한 서버, WAS에서 데이터를 가공 후 웹서버에 전달- 웹서버에서 정적인파일 수정 후 클라이언트 전달 - 동적인 요청(예를 들어 사용자에.. 2017. 5. 16.
[node.js]Supervisor로 웹서버 자동 재시작하기 [Supervisor의 역할]- static 디렉토리 내에 있는 이미지, 자바스크립트 등 파일은 수정하면 바로 반영됨- 그러나 그외 웹서버 관련 자바스크립트 파일은 수정을 해도 바로 반영되지않음, 서버 재시작을 해야함- Supervisor는 ctrl+c를 통해 웹서버 구동을 껐다가 다시 시작하는 행동을 개발자가 직접하지않아도 자동으로 하게끔 함- 사무 자동화랄까? [Supervisor 설치 및 실행]- Supervisor는 npm을 통해서 설치함 1) npm install supervisor -g - 슈퍼바이저를 설치하는데, 서버컴퓨터 전역에서 사용할 수 있도록 -g (옵션값)을 달아줌(어떠한 프로젝트간에 사용가능)- permission denied가 뜨면 sudo를 붙여 루트 권한으로 설치해줌 2) s.. 2017. 5. 15.
[node.js] express 로그인 정보 전달하기 [먼저 보면 좋은 게시글] - [웹기본개념] HTTP 그리고 REST API 다가가기 : http://jinbroing.tistory.com/96 (HTTP 메서드 참고)- [node.js] express 라우팅, CRUD / 쿼리스트링 : http://jinbroing.tistory.com/97 (라우팅이란 참고)- [node.js] express 그리고 템플릿엔진 ejs : http://jinbroing.tistory.com/107 [서버에 요청할 때 구분해서 쓰자]- 서버에 정보를 요청(Read)할 때는 GET- 서버에 클라이언트가 정보를 전달할 때에는 POST [서버로 데이터를 전송할땐]- 클라이언트가 서버로 데이터를 전송할 땐 POST- express POST 방식 구현하기 [서버로 데이터 전송.. 2017. 5. 15.
[자바스크립트] 개념정리② - 스코프, 실행컨텍스트, 스코프체인 [먼저 보면 좋은 게시글]- [자바스크립트] 짧게짧게 개념정리① : http://jinbroing.tistory.com/112 [스코프]- 변수의 범위를 뜻함- 자바스크립트는 블록( { ... } )이 아닌 함수 기준 변수 범위를 사용함- 함수의 유효범위는 [[Scopes]] 프로퍼티로 함수 객체 내 연결리스트 형태(왜 연결리스트인지는 아래 내용들 참고)로 관리됨 [실행컨텍스트와 스코프]- 실행컨텍스트가 생성될 때 스코프 정보를 생성함- 실행컨텍스트 종류는 어플리케이션이 실행되면 자동으로 생성되는 전역 컨텍스트 / 함수가 실행되면 생성되는 함수 컨텍스트가 있음- 전역 컨텍스트에는 전역객체(스코프정보가 담긴 [[Scopes]] 프로퍼티, 함수 파라미터 정보가 담긴 arguments)가 있음- [[Scope.. 2017. 5. 12.
[자바스크립트] 함수는 값이다 그리고 일급객체다 [먼저 보면 좋은 게시글]- [자바스크립트] 객체란 무엇인가 그리고 함수는 객체다 - http://jinbroing.tistory.com/113 [자바스크립트 함수는 값]- 자바스크립트는 함수를 값으로 취급함- 값의 형태는 객체(object) [자바스크립트 함수 특징]- 자바스크립트 함수는 값(object)으로 변수에 저장할 수 있음- 자바스크립트 함수는 자료구조(array, object 등)에 저장할 수 있음- 자바스크립트 함수는 다른 함수의 인자로 전달할 수 있음- 자바스크립트 함수는 return 값으로 사용될 수 있음 [일급시민과 일급객체란 무엇인가]- 일급시민(first class citizen)이란 값으로 다룰 수 있음을 뜻함, 예를 들어 값에는 숫자와 문자가 있음- 일급객체(first clas.. 2017. 5. 12.
[자바스크립트] 객체란 무엇인가 그리고 함수는 객체다 [먼저 보면 좋은 게시글]- [자바스크립트] 객체- http://jinbroing.tistory.com/54- [자바스크립트] 객체 #2 - http://jinbroing.tistory.com/55- [자바스크립트] 짧게짧게 개념정리① - http://jinbroing.tistory.com/112 (실행컨텍스트부터 보기) [객체란 무엇인가]- 객체란 변수들과 그와 관련된 메서드들이 모여서 이룬 하나의 꾸러미- 객체는 상태와 행동을 가짐, 즉 프로퍼티, 메서드를 가지고 있음- 추상적인 객체라는 틀을 통해 생성된 실체적인(실제로 만들어진) 특정 객체를 인스턴스라 함- 붕어빵을 찍는 틀이 추상적인 의미의 객체, 만들어진 각각의 붕어빵을 인스턴스(실체적 특정 객체)라 함- 인스턴스들은 인스턴스 프로퍼티값, 메서.. 2017. 5. 11.
[자바스크립트] 짧게짧게 개념정리① [먼저보면 좋은 게시글]- [프로그래밍기초] 컴퓨터는 명령을 내부적으로 어떻게 처리하는가 : http://jinbroing.tistory.com/109- [자바스크립트] 카테고리 글 [짧게 개념정리]- 변수 선언 : var로 선언해야함, 메모리에 올린다는 것, 메모리의 주소를 저장함. 무분별한 선언 === 메모리 누수- 변수 종류 : 전역, 지역, 지역 선언의 경우 - 호이스팅 : 변수 선언과 값 할당을 구분, 선언부를 최상단으로 끌어올리고 undefined 임의할당, 함수가 실행되면서 값 할당- undefined : 변수 선언만 되었고, 값이 할당되지않은 상태, undefined가 자동 할당됨- 스코프 : 함수 단위의 유효범위1) 함수 내에 정의된 변수, 함수는 함수 내에서 사용, 함수가 정의되는 시점.. 2017. 5. 8.
[프로그래밍기초] 절차지향 객체지향 프로그래밍 [프로그래밍이란 무엇인가]- 컴퓨터의 하드웨어를 제어하거나 하드웨어를 활용해 연산하기위해 명령을 내리는 것- C, C++, Java, Ruby, Python 등 프로그래밍에 사용되는 언어를 프로그래밍 언어라 함 [절차지향 프로그래밍이란 무엇인가]- 절차에 맞춰 순서대로 나열하는 프로그래밍 기법을 말함 - 예를 들면 아래와 같음 : 음료수 자판기 프로그래밍(음료수 자판기만)1) 동전을 넣는다2) 음료 버튼 응답을 받고, 넣은 동전과 가격을 비교해봄(초과, 동일, 미만)3) 동일할 경우 음료수 배출(동일한 경우만 나타냄) - 단일 종류만 필요한 경우, 복잡한 절차가 필요한 경우가 아니면 절차지향 프로그래밍 언어를 통해 프로그래밍- 절차가 길어지고 복잡해지면 코드를 한 눈에 알아보기가 힘듬- 일부분을 고치려고.. 2017. 5. 6.
[프로그래밍기초] 컴퓨터는 명령을 내부적으로 어떻게 처리하는가 [왜 알아야하나]- 메모리 관리 메모리 관리 말을 하는데 왜 필요한지 정확하게 알기위해 공부하기- 비전공자로서 내부적으로 어떻게 돌아가는지 알면 더 도움이 될 것 같기에 공부하기- 중요하지않다고 그냥 지나쳤던 것들이 중요한 순간이 오더라구... 그 순간이 바로 지금! 그래서 공부하기 [컴퓨터는 어떻게 이루어져있는가]- 크게 보자면 하드웨어와 소프트웨어로 이루어져있음- 하드웨어는 컴퓨터시스템의 물리적 부품을 뜻함(위키백과 하드웨어 설명 중)- 소프트웨어는 명령어나 입력을 통해 하드웨어에 명령을 하고, 그에 따른 처리를 하도록 만듬 [우리는 소프트웨어를 만드는 개발자]- 소프트웨어 개발자는 소프트웨어를 만듬- 웹 어플리케이션, 모바일 어플리케이션 등이 해당됨- 기능만 잘 만드는 개발자가 아니라 효율적으로 개.. 2017. 5. 4.
[웹기본개념] 스크립트 언어, JIT 컴파일이란 [스크립트 언어란]- 컴파일 언어의 경우 수정이 빈번하다면 매번 컴파일(실행전 기계어 코드로, 자바는 바이트코드 형태 중간언어로 변환 후 해석, 실행함 - JVM) 해야함- 수정이 빈번한 때에는 실행할 때 코드를 한줄 한줄 읽어 대응하는 기계어 코드를 바로 실행하는 인터프리터 언어가 유리함- 스크립트 언어는 위에서 언급한 단점을 극복하기위해 나온 언어임 [대표적인 스크립트 언어]- javascript- actionscript- php- ruby- python [스크립트 언어의 특징]- 일반적으로 새로운 프로그램을 만들기보다 기존에 만들어진 프로그램에서 제어를 하기위해 사용됨- 프로그램 내에서 스크립트 언어 구동을 위해 지원함- 웹브라우저에서 구동이 지원되는 자바스크립트, 플래시를 제어하기위한 액션스크립트.. 2017. 5. 4.