kimsQ Rb vs Wordpress 를 브라우저상에서 로드타임 비교와 서버내에서의 실행속도를 기준으로 성능 비교를 해보았습니다. 객관적으로 동일한 환경에서 정량적인 테스트가 될 수 있도록 노력 했습니다. 산출된 결과는 킴스큐가 워드프레스에 비해 로드타임에서 3.6~5배 빠른 것으로 나왔으며, 서버내 스크립트 실행속도에서는 11~16배 빠르다는 결과를 얻을 수 있었습니다. 본 테스트를 위해 사이트를 제공해 주신 하비타임즈(hobbytimes.co.kr/) 킴스오빠(이영화)님께 감사 드립니다. - 레드블럭 킴스큐 운영팀 권기택
kimsQ Rb vs Wordpress 를 브라우저상에서 로드타임 비교와 서버내에서의 실행속도를 기준으로 성능 비교를 해보았습니다. 객관적으로 동일한 환경에서 정량적인 테스트가 될 수 있도록 노력 했습니다. 산출된 결과는 킴스큐가 워드프레스에 비해 로드타임에서 3.6~5배 빠른 것으로 나왔으며, 서버내 스크립트 실행속도에서는 11~16배 빠르다는 결과를 얻을 수 있었습니다. 본 테스트를 위해 사이트를 제공해 주신 하비타임즈(hobbytimes.co.kr/) 킴스오빠(이영화)님께 감사 드립니다. - 레드블럭 킴스큐 운영팀 권기택
node.js를 처음 접하는 개발자를 위한 스터디 자료입니다.
실습 위주로, 간단한 웹 페이지를 만들어 보는 것을 목표로 하며,
express를 활용하기에 앞서, node.js 기본 API만으로 GET/POST 처리 방식을 알아봅니다.
내용의 깊이가 있지는 않으며, 단지 node.js의 입문을 위한 가벼운 수준으로 내용이 구성되었습니다.
빅데이터, 데이터마이닝, 공공데이터, 오픈데이터 - 그 어느때보다 데이터 분석 및 활용이 중요해진 이 시기에 웹 상의 수많은 공개된 자료를 직접 수집할 수 있는 웹 스크래핑/크롤링 기술은 데이터 수집 및 활용 능력에 큰 도움이 됩니다.
이 강의에서는 크롤링 프레임웍을 사용하지 않고 HTTP, DOM, concurrency를 담당하는 기본적인 라이브러리만을 사용해 직접 웹 스크래퍼를 처음부터(from scratch) 작성해 봄으로써, 언제든 자유도 높은 동시성 크롤러를 직접 구현할 수 있도록 작동 원리를 이해할 수 있도록 합니다.
시연에서 작성된 전체 소스코드는 아래 링크에서 보실 수 있습니다.
https://gist.github.com/cornchz/0ec0c3f5ca69bac2b625
node.js를 처음 접하는 개발자를 위한 스터디 자료입니다.
실습 위주로, 간단한 웹 페이지를 만들어 보는 것을 목표로 하며,
express를 활용하기에 앞서, node.js 기본 API만으로 GET/POST 처리 방식을 알아봅니다.
내용의 깊이가 있지는 않으며, 단지 node.js의 입문을 위한 가벼운 수준으로 내용이 구성되었습니다.
빅데이터, 데이터마이닝, 공공데이터, 오픈데이터 - 그 어느때보다 데이터 분석 및 활용이 중요해진 이 시기에 웹 상의 수많은 공개된 자료를 직접 수집할 수 있는 웹 스크래핑/크롤링 기술은 데이터 수집 및 활용 능력에 큰 도움이 됩니다.
이 강의에서는 크롤링 프레임웍을 사용하지 않고 HTTP, DOM, concurrency를 담당하는 기본적인 라이브러리만을 사용해 직접 웹 스크래퍼를 처음부터(from scratch) 작성해 봄으로써, 언제든 자유도 높은 동시성 크롤러를 직접 구현할 수 있도록 작동 원리를 이해할 수 있도록 합니다.
시연에서 작성된 전체 소스코드는 아래 링크에서 보실 수 있습니다.
https://gist.github.com/cornchz/0ec0c3f5ca69bac2b625
GitHub: https://github.com/gsk120/UnityAutoBuild_iOS
유니티 빌드 자동화에 대한 설명을 다룬 ppt 입니다.
빌드 자동화에대해 고민이 많으신 분들을 위해 조금이나마 도움이 되고자 이렇게 자료를 공유합니다.
루비 Rakefile을 이용하여 Unity build -> Xcode 수정 -> Xcode build -> ipa 추출까지 한번에 진행하는 과정을 설명하였습니다.
Xcode 빌드가 안드로이드에 비해 상당히 느리기 때문에 수동으로 빌드하는 경우 신경써야 하는 일이 상당히 많습니다. 이 시간을 절약하여 개발에 좀더 투자할 수 있다면 개발자는 더욱 높은 퀄리티의 프로그램을 구현할 수 있을 것입니다. 하지만 빌드 자동화에 대한 정보가 많이 부족하고, 매뉴얼 형식의 자료가 별로 없어 구축하는데 꾀나 많은 조사와 분석이 필요합니다.
수동으로 빌드하며 고생하시는 분이나, 자동화 구축을 위해 고생하시는 분들께 같은 고민을 한 입장으로써, 부족하지만 도움이 되고자 이렇게 빌드 자동화 ppt를 공유합니다.
JSP 프로그래밍 #02 서블릿과 JSP 시작하기
2.1 톰캣 애플리케이션 만들기 (온라인 강의: https://youtu.be/04LIGWKCFjY)
2.2 간단한 서블릿 만들기 (온라인 강의: https://youtu.be/4ajw5EsxYE8)
2.3 간단한 JSP 만들기 (온라인 강의: https://youtu.be/6h-qH8pGdT8)
2.4 간단한 자바빈즈 만들기 (온라인 강의: https://youtu.be/TlgXkAWi1sc)
01 Docker란 무엇이며, 왜 필요한가?
02 Docker의 핵심 개념과 용어
03 Do(ckerize) it yourself
Docker란?
애플리케이션을 개발(developing)하고, 배포(shipping)하고, 실행(running)하기 위한 Open Platform
OS-level Virtualization(Linux Container)를 제공하기 위한 구현 제품.
애플리케이션과 인프라스트럭처의 의존관계를 분리할 수 있는 방법
가상머신(Virtual Machine)의 단점을 극복할 수 있는 리눅스 컨테이너 기술의 구현
Docker Client : 명령어를 통해 Docker Daemon에 API를 호출하여 Docker Image와 Container를 관리할 수 있는 프로그램
Docker Daemon : Docker API 요청을 수신하여 Docker Object(Image, Container, Network, Volue 등)를 관리할 수 있는 프로세스
Docker Registry : Docker Image를 저장하고 관리하는 공간. Public Registry(ex. Docker Hub)와 Private Registry가 있음.
Dockerfile : Docker Image를 빌드하기 위한 정보 및 명령어가 작성된 파일 (Docker Image를 생성하는 방법 중 하나)
Docker Image : Dockerfile, Docker Registry, 또는 다른 Docker Image로부터 생성된 컨테이너 생성을 위한 Read-only Template
Docker Container : Docker Image 위에서 실행된 특수한 형태의 격리된 프로세스
01 Docker란 무엇이며, 왜 필요한가?
02 Docker의 핵심 개념과 용어
03 Do(ckerize) it yourself
Docker란?
애플리케이션을 개발(developing)하고, 배포(shipping)하고, 실행(running)하기 위한 Open Platform
OS-level Virtualization(Linux Container)를 제공하기 위한 구현 제품.
애플리케이션과 인프라스트럭처의 의존관계를 분리할 수 있는 방법
가상머신(Virtual Machine)의 단점을 극복할 수 있는 리눅스 컨테이너 기술의 구현
Docker Client : 명령어를 통해 Docker Daemon에 API를 호출하여 Docker Image와 Container를 관리할 수 있는 프로그램
Docker Daemon : Docker API 요청을 수신하여 Docker Object(Image, Container, Network, Volue 등)를 관리할 수 있는 프로세스
Docker Registry : Docker Image를 저장하고 관리하는 공간. Public Registry(ex. Docker Hub)와 Private Registry가 있음.
Dockerfile : Docker Image를 빌드하기 위한 정보 및 명령어가 작성된 파일 (Docker Image를 생성하는 방법 중 하나)
Docker Image : Dockerfile, Docker Registry, 또는 다른 Docker Image로부터 생성된 컨테이너 생성을 위한 Read-only Template
Docker Container : Docker Image 위에서 실행된 특수한 형태의 격리된 프로세스
9. 특별한 Meteor 의 디렉토리 – 1. 프로젝트 생성
5. 몽고디비에도 접속해봅니다. (robomongo)
10. 특별한 Meteor 의 디렉토리 – 1. 프로젝트 생성
5. 몽고디비에도 접속해봅니다. (robomongo)
11. 특별한 Meteor 의 디렉토리 – 1. 프로젝트 생성
5. 몽고디비에도 접속해봅니다.
12. 특별한 Meteor 의 디렉토리
1. 프로젝트 생성
2. 폴더구조
3. 로딩
4. 추천하는 폴더구조
13. 특별한 Meteor 의 디렉토리 – 2. 폴더구조
1. 기본 폴더 및 화일은 그림과 같습니다.
14. 특별한 Meteor 의 디렉토리 – 2. 폴더구조
2. 다음과 같이 폴더를 생성합니다.
- client(브라우저) 상에서 구동될 소스가 위치할 곳입니다.
미티어가 오로지 클라이언트 소스로 인식합니다
- html , css , javascript 화일들이 위치합니다.
- if (Meteor.isClient) { ... } 과 같이 동작합니다.
15. 특별한 Meteor 의 디렉토리 – 2. 폴더구조
2. 다음과 같이 폴더를 생성합니다.
- 클라이언트와 서버쪽 모두 동작할 화일들을 위치합니다.
예) 각종 유틸, collection 정의된 화일, 공통 method 들
** model 이란 폴더는 임의로 정한 폴더임
Meteor.isClient 와 Meteor.isServer 모두 사용가능함
16. 특별한 Meteor 의 디렉토리 – 2. 폴더구조
2. 다음과 같이 폴더를 생성합니다.
- 서버쪽에서만 사용될 리소스들을 넣어 둘수 있습니다.
- Assets API 를 통해서 접근 할수 있습니다.
17. 특별한 Meteor 의 디렉토리 – 2. 폴더구조
2. 다음과 같이 폴더를 생성합니다.
- public 폴더는 url 에서 “/” 로 서비스 합니다.
- favicon.ico, robots.txt 화일들을 저장하기에 적합합니다.
- meteor 이전에 client 사이드 화일을 재활용할수 있습니다.
예) rest 처리하던 jQuery 사이트 , angularjs 사이트
18. 특별한 Meteor 의 디렉토리 – 2. 폴더구조
2. 다음과 같이 폴더를 생성합니다.
- server 측 프로그램들이 위치합니다
- publish 가 선언된 서버측 화일을 위치합니다.
- 서버측 mehod 가 구현된 파일을 저장합니다.
- if (Meteor.isServer) { ... } 과 같이 동작합니다.
19. 특별한 Meteor 의 디렉토리
1. 프로젝트 생성
2. 폴더구조
3. 로딩
4. 추천하는 폴더구조
20. 특별한 Meteor 의 디렉토리 - 로딩
- 개발시에 순서에 민감한 코드들은 packages 폴더를
이용하거나 Meteor.startup(서버,클라이언트 모두)를
사용하여 코드를 작성할 것을 추천합니다.
그러면 meteor 가 의존성 및 민감성을 관리 해줍니다 :)
- grunt.js 같은 의존성 관리를 app 개발자가 직접 하지 않습니다. :)
- 부득이하게 로딩 순서가 중요할 경우에만 참조합니다.:)
(그런경우가 거의 없음!)
(다음)
21. 특별한 Meteor 의 디렉토리 - 로딩
1. 하위 디렉토리의 파일을 먼저 로딩합니다. (루트는 마지막)
2. 같은 위치의 파일과 폴더는 alphabetical order 를 따릅니다.
3. alphabetical order 로딩후에 lib 디렉토리를 로딩합니다.
4. main.* 화일은 제일 마지막에 로딩됩니다.
** 일반적인 경우는 1~4까지를 고민할 일이 없습니다.
# 결론 : “미티어는 빌드 할때 나름 rule 을 가지고 있구나” 를 알게 되었다 !
22. 특별한 Meteor 의 디렉토리
1. 프로젝트 생성
2. 폴더구조
3. 로딩
4. 추천하는 폴더구조
23. 특별한 Meteor 의 디렉토리 - 추천하는 폴더구조
1. 루트레벨폴더
customer/lib/ # 사용자 관련
customer/client/
customer/server/
posts/lib/ # 포스트 관련
posts/client/
posts/server/
2. 폴더안에 서버 클라이언트 구분
lib/customer/
lib/posts/
client/customer/
client/posts/
server/customer/
server/posts/
3. 패키지로 관리 하기
# 결론 #
미티어는 프로젝트 중간에
파일명, 폴더명 변경가능
자신에 맞는 폴더로
추후에 정리 가능 :)
24. 특별한 Meteor 의 디렉토리 - 추천하는 폴더구조
4. 저요?
/server – method.js , method4angular.js , router.js , publish.js
/client – 매뉴별로 폴더를 정하고 폴더안에 a.html,a.js 로 한쌍씩 넣었습니다.
/public – angularjs 소스 파일 (meteor 로 넘어 바꾸기전 소스들)
/model - 기본 collection api만을 사용한 코드. asser.js , schema.js , util.js 등등