express 모듈 설치 우선 express 를 사용하기 위해서는 npm을 이용하여 express 모듈을 설치해야 한다. npm install express # 전역으로 설치 npm install express --save # 로컬에 설치 express-generator 툴을 이용하여 express 프로젝트 생성express-generator 를 이용하여 프로젝트의 기본 뼈대를 간단하게 생성할 수 있다. 우선 express-generator 를 설치한다. npm install express-generator 설치후 아래의 명령으로 프로젝트를 생성한다. express [프로젝트명(폴더명)] 사용가능한 옵션은 다음과 같다. 상세한 옵션은 아래의 링크를 참조하면 된다. -e, --ejs : 템플릿 엔진을 ej..
완전 멋짐
python 에서 http 를 처리하는 방벙에는 기본적으로 제공하는 urllib, urllib2 모듈을 이용하는 방법도 있지만 request 모듈을 이용하면 좀더 편리하게 처리할 수 있다. pip install requests pip를 이용하여 설치후 사용한다. #! -*- coding:utf-8 -*- import requests r = requests.get('http://comic.naver.com/webtoon/detail.nhn?titleId=22027&no=1&weekday=wed') print(r.text) print(r.headers) print(r.encoding) print(r.cookies) print('-------------------') # header 를 이용 headers =..
디렉토리에 지정된 특정 파일의 파일명을 일괄로 변경해야 하는 경우 다음의 소스를 활용하면 된다. 아래는 현재 디렉토리의 zip 파일을 가져와서 파일명의 공백과 꺽쇠를 없애는 소스코드이다. def rename_file(): for filename in os.listdir("."): if filename.endswith("zip"): os.rename(filename, filename.replace(" ", "_").replace("", ""))
좋은 글을 발견해서 소개한다. 더 나은 개발자가 되는 8가지 방법 1. 배울 것이 얼마나 많은지 상기하세요. - 무언가를 배우는 첫 걸음은 그것을 모른다는 것을 깨닫는 것입니다. - 무언가를 가장 잘 안다고 생각할 때는 방금 그것을 배웠을 때 입니다. 2. 당신이 맞다는 것을 증명하려고 하지 마세요. - 훌륭해 지기 위해서는 경험에서 배워야 합니다. - 어떻게 하면 이것을 더 잘할 수 있을지 항상 고민하세요. 3. "동작하는 코드"는 끝이 아니라 시작입니다. - 동작하는 코드를 만들었다면, 더 낫게 만드는데 노력하세요. - 더 빠르게 or 더 문서화하기 쉽게 or 더 사용하기 편하게 4. 세 번 다시 작성하세요. - 문제점을 해결 가능하게 작성하고, 동작하게 작성하고, 올바르게 작성하세요. - 문제에 대..
[jade] - node.js 를 위한 템플릿 엔진 - express 의 기본 템플릿 엔진 - ejs에 비해 4배정도의 다운로드수(2016.03.10 기준) - jade 의 형식으로 된 문법을 이용하여 html 구성 - 들여쓰기가 중요함 -- 탭과 띄어쓰기중 한가지만 사용해야 함 - 첫번째로 쓰여진 문자가 태그가 되고, 공백 다음에 쓰여진 문자가 태그의 내용이 됨 -- title hahaha --> hahaha 로 변환됨 - 태그의 속성은 괄호를 이용하여 입력 -- a(href="www.target.url") --> 로 변환됨 -- 여러개의 속성은 콤마(,)로 구분하여 입력함 - jade 로 파싱된 결과물은 집핑(ziping)되어 나옴 -- 줄바꿈없이 나오게 됨 -- 전송용량을 줄이기 위함 var jad..
[알파고] - AlphaGo, Go는 일본어로 바둑을 뜻함 - 딥러닝(Deep Learning) 기술을 이용하여 바둑을 학습, 현재는 프로 5단의 실력을 가지고 있다고 함 - 구글에 인수된 인공지는 연구 업체 딥마인드가 개발 알파고 (바둑 인공지능)의 작동 원리 from Shane (Seungwhan) Moon [머신러닝(기계학습)] - 컴퓨터가 스스로 학습해 패턴을 찾고, 최적을 판단을 하는 알고리즘 - 알고리즘을 3가지 분류로 구분할 수 있음 -- 확률기반 -- 기하기반 -- 인공 신경망 --- 딥러닝 머신러닝의 한가지 임 새로운 개념은 아님 인공신경망 개념에 발달한 H/W 성능으로 최근 대두되기 시작 [텐서플로우]- 구글에서 공개한 머신러닝을 위한 오픈소스- giHub 에 공개되어 있음- 파이썬 A..
ejs 모듈은 html 템플릿 생성을 위한 모듈이다. jsp 와 비슷한 형태를 하고 있으며, jsp 의 스크립틀릿 형태로 작성하면 자체 렌더러를 이용하여 html 형식으로 변환해 준다. var ejs = require('ejs'); var fs = require('fs'); // file read html_str = fs.readFileSync(__dirname + '/sample.ejs', 'utf-8'); // compile template = ejs.compile(html_str); console.log(template({ 'title' : 'compile' })); // render console.log(ejs.render(html_str, { 'title' : 'render' })); compi..
웹상에서 파일을 다운로드 하기 위해서는 urllib 모듈을 이용하면 된다. 다음과 같이 2가지 방법이 있다. * urlretrieve 를 이용하는 것이 더 편할듯 import urllib urllib.urlretrieve(file_url, file_name) import urllib resource = urllib.urlopen("http://www.digimouth.com/news/media/2011/09/google-logo.jpg") output = open("file01.jpg","wb") output.write(resource.read()) output.close() http://stackoverflow.com/questions/8286352/how-to-save-an-image-locally-..
스타트업 얼라이언스 주최로 네이버 D2 스타트업 팩토리에서 열린 박종천 넥슨 플랫폼본부 부본부장의 "개발자가 갖추어야 할 9가지 기술" 강연 동영상입니다. 좋은 내용이니까 한번 들어보면 좋을 것 같다. 바쁜분은 55분 경부터 Q&A 부터 들어도 된다. "공부를 계속 해야 한다. 닥치는 대로 공부한다. 기술은 계속 나오고, 발전한다.""호기심이 있어야 한다. 세상에 대한 호기심이 있어야 한다. 호기심을 잃는 순간 끝난다." "믿을 건 내 실력뿐. 실력을 키워야 한다." "기회가 왔을 때 잡을 수 있는 능력을 키워야 한다." "처음에는 시킨 대로만 한다. 신뢰가 쌓이면 더 좋은 결과물을 낸다. 더 신뢰가 쌓이면 좀 더 좋은 능력을 내본다. 처음부터 잘하려고 하면 안된다. 신뢰가 더 중요하다."
회사에서 사용하는 충전기의 충전 속도가 너무 느려서 충전기의 정격전압, 정격입력(Input), 정격출력(Output)에 대해서 알아 보았다. 우선 관련된 공식은 다음과 같다. 학교에서 과학시간에 배우는 기본적인 공식이다. 전류: I or A 전력(W) = 전압(V) X 전류(A) 전압(V) = 전류(I) X 저항(R) 전압은 수도관의 크기 또는 굵기 라고 할 수 있고, 전류는 수도관에 흐르는 물의 속도 라고 할 수 있다. 저항은 물이 흐르는 것을 방해하는 돌 같은 것이라고 할 수 있겠다. 즉, 충전기의 정격출력의 전압이 맞으면 같은 충전기를 사용할 수 있는 것이다. 전류가 높으면 높을 수록 충전 속도가 빨라진다. 현재 내가 가지고 있는 어댑터를 보면 아래와 같이 적혀 있다. INPUT: 100-240V ..
nodejs의 이벤트 리스너는 기본적으로 10개 까지 연결이 가능하다. 11개 이상을 등록하면 다음의 에러가 발생한다. (node) warning: possible EventEmitter memory leak detected. 11 exit listeners added. Use emitter.setMaxListeners() to increase limit. 11개 이상을 등록하기 위해서는 다음과 같이 사용한다. // 리스너 제한 수정 process.setMaxListeners(15); 위와 같이 process의 EventEmitter 객체를 이용해도 되고,EventEmitter 객체를 직접 사용해서 수정해도 된다. https://nodejs.org/api/events.html#events_emitter_..
node.js 에서 mysql과 연동하기 위해서는 우선 npm을 이용하여 mysql 모듈을 설치한다. npm install mysql 설치후 다음과 같이 사용한다. DB 커넥션을 이용한 기본적인 쿼리 실행방법은 다음과 같다. // 모듈을 추출합니다. var mysql = require('mysql'); // 데이터베이스와 연결합니다. var client = mysql.createConnection({ user: 'root', password: 'p@ssw0rd', host: 'localhost', port: 3306 }); // DB와 묵시적으로 연결하여 쿼리를 사용 client.query('use sample;'); client.query('select * from company;'); // 배열을 이..
컴퓨터 데이터의 단위는 bit 이다. 보통 컴퓨터의 용량을 표기할 때 아래와 같이 표기한다. 8bit = 1Byte 1024Byte = 1KByte 1024KByte = 1MByte 1024MByte = 1GByte 1024GByte = 1TByte 이를 이진법 표기라고 한다. 일반적 인터넷 다운로드 속도를 100Mbps 라고 표기하는 데 이는 십진법 표기를 따른다. 1K = 1,0001M = 1,000,0001G = 1,000,000,000 과 같이 표기가 된다. 즉 이진법 표기와 십진법 표기에 따라서 생각하는 다운로드 속도가 다를 수 있다는 것이다. 100Mbps = 1,000,000 bps --(이진법 변환)--> 1,000,000/8/1024/1024 = 11.92MBps 가 된다. 1byte는 ..
파이썬에서 xml 을 파싱할때는 xml.etree.ElementTree 를 이용하여 진행한다. 주오 프로퍼티는 tag, attrib, text 가 있고, 주요 메소드는 iter(), findall() 이 있다. 활용 방법은 다음과 같다. # -*- coding:utf-8 -*- import xml.etree.ElementTree as ET country_data_as_string = ''' 1 2008 141100 4 2011 59900 68 2011 13600 1 2015 4 2015 ''' tree = ET.parse('test.xml')#파일을 이용한 파싱 root = tree.getroot() root = ET.fromstring(country_data_as_string)# xml 문자를 이용한 ..
다음의 오류가 발생하면 해결방법은 2개가 있는 것 같다. 우선 하나는 mapreduce.tasktracker.http.threads 를 수정하는 것이고, 다른하나는 slave 파일에 호스트 정보를 추가하는 것이다. 또는 작업을 다시한번 돌려도 될 것 같다. Caused by: java.io.IOException: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out. 1번 mapred-site.xml 의 mapreduce.tasktracker.http.threads 값을 기본 40에서 더 큰수로 설정 하고 하둡을 재시작한다. mapreduce.tasktracker.http.threads: 맵의 출력 데이터를 리듀스 태스크에게 제공하기 위한 태스크 트래커의 워커 스레드개수 ..
맵, 리듀스 태스크는 처리될 때 JVM를 새로 생성한다. 따라서 짧은 작업이 여러개 생성될 경우 JVM을 신규로 생성하는 오버헤드가 클 수도 있다. 이때 JVM을 재사용하여 작업을 처리하는 시간은 줄일 수 있다. 아래의 설정은 JVM에서 처리할 수 있는 작업의 개수를 설정한다. 기본 설정은 1이지만, -1로 설정하면 제한없이 사용할 수 있다. hadoop v1mapred.job.reuse.jvm.num.tasks=-1hadoop v2 mapreduce.job.jvm.numtasks=-1 http://www.nexr.co.kr/upload/mapli_deux.pdfhttps://hadooptips.wordpress.com/2013/03/19/improving-performance-with-jvm-reuse..
시스템 보안 1 운영체제 1.1 운영체제 개요 1.1.1 운영체제의 주요기능 1.1.2 운영체제의 구조 1.1.3 운영체제의 기술발전 흐름 1.2 운영체제의 주요 구성 기술 1.2.1 프로세스 관리 1.2.2 기억장치 관리 1.2.3 파일 시스템 관리 1.2.4 분산 시스템 1.3 운영체제 사례별 특징과 주요 기능 1.3.1 유닉스 1.3.2 윈도우 1.3.3 리눅스 1.3.4 보안운영체제 특징 2 클라이언트 보안 2.1 윈도우 보안 2.1.1 설치 및 관리 2.1.2 공유자료 관리 2.1.3 바이러스와 백신 2.1.4 레지스트리 활용 2.2 인터넷 활용 보안 2.2.1 웹브라우저 보안 2.2.2 메일 클라이언트 보안 2.3 공개 해킹도구에 대한 이해와 대응 2.3.1 트로이 목마 SW 2.3.2 크래킹..
http://mmemories.tistory.com/296 어도비 리더가 설치된 아래의 위치에 가서 C:\Program Files\Adobe\Reader 10.0\Reader\plug_ins 아래의 API를 삭제 한다. Accessibility.apiMakeAccessible.apiReadOutLoud.api 그리고 실행하면 '화면 판독기를 지원하지 않습니다.' 라고 팝업이 뜨는데,'다시 알리지 않음' 체크후 확인을 클릭하면 된다.
[LTS(Long Term Supported) 버전] - LTS 버전은 서버환경에서 장기적으로 안정적인 지원을 제공하는 버전 - 짝수 버전이 LTS 버전(현재 4.X) - 안정성과 보안성에 초점을 두어 개발 [Stable 버전] - Stable 버전은 잦은 업데이트를 진행 - 홀수 버전(현재 5.X) - 추가기능 개발과 기존 API의 기능 개선에 우선한다. * 서버운영을 위해서는 LTS 버전을 설치하고, 개발및 테스트를 위해서는 Stable 버전을 설치해서 처리하면 될 것 같다.
넷플릭스가 우리나라에서 서비스가 되면서, LG 스마트 TV에 앱이 올라오는지 확인해 봤는데 아직 등록되지 않았다. 하지만 LG 스마트 월드의 공지사항에는 2016.01.15일자 기준으로 등록이 되었다. http://kr.lgappstv.com/appspc/main/main/main.lge 서비스 센터1588-7777)에 확인해 보니 3월 초에 서비스 예정이라고 한다. LG 스마트 TV를 사용하고 계신 분들중 아직 LG 컨텐츠 스토어에 넷플릭스가 등록되지 않으신 분들은 등록될때까지 기다리고 있어야 할 것 같다. 작년 5월 모델인데... 너무 늦게 등록되는 듯...
배쉬 스크립트를 사용할 때 set -e 옵션을 이용하여 스크립트 실행 중 오류가 발생하면 종료하게 설정이 가능하다. #!/bin/bash set -e 위와 같이 설정하여 사용한다. 에러가 나면 종료된다고 해서 잘쓰고 있었는데 사용에 주의해야 할 점이 하나있다. * 그리고 외국사이트를 검색해보니 사용을 추천하지 않더라. set -e의 경우 명령어를 실행한 리턴코드가 0이 아니면 프로그램을 종료하게 된다. 따라서 grep 같은 경우에 반환하는 값이 없으면 오류가 발생한 것이 되서 프로그램이 종료된다. 프로그램이 어떻게 실행되었는지 확인하기 위해서 grep 을 사용하여 단순 로그를 출력하는 프로그램을 작성했는데grep의 반환결과가 없어서 프로그램이 종료되어 버렸다. set -e 옵션을 이용하여 프로그램의 에러..
하둡에서 자주 사용하는 명령어는 다음과 같다. * 폴더의 용량을 확인할 때 count 를 사용* 파일의 내용을 확인할 때는 cat 보다는 text를 사용하면 더 좋다. 파일 타입을 알아서 판단하기 때문 hadoop fs -cat [경로] - 경로의 파일을 읽어서 보여줌 - 리눅스 cat 명령과 동리함 hadoop fs -count [경로] - 경로상의 폴더, 파일, 파일사이즈를 보여줌 hadoop fs -cp [소스 경로] [복사 경로] - hdfs 상에서 파일 복사 hadoop fs -df /user/hadoop - 디스크 공간 확인 hadoop fs -du /user/hadoop - 파일별 사이즈 확인 hadoop fs -dus /user/hadoop - 폴더의 사이즈 확인 hadoop fs -get..
- Total
- Today
- Yesterday
- 하둡
- Tez
- 백준
- 다이나믹
- oozie
- java
- AWS
- Python
- Linux
- error
- ubuntu
- HDFS
- Hadoop
- hbase
- bash
- airflow
- 하이브
- yarn
- mysql
- emr
- 오류
- 알고리즘
- SQL
- build
- HIVE
- 정올
- nodejs
- SPARK
- 파이썬
- S3
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |