목록it (189)
Dharma
Elasticsearch 설정하기 드디어!! AWS 에 있는 Elasticsearch 서비스에 은전한닢 플러그인이 추가 됐습니다. 예전에는 이런 기능이 없어서 제가 따로 elasko 라고 은전한닢에 패치된 형태의 엘라스틱서치의 도커 형태를 만들었습니다. 이제 시간이 지나서 elasticsearch 6.0 이 나오고 (제가 만든 elasko 는 5.5 기반) 문법도 많이 바뀌고 해서 다시금 정리할 필요가 있습니다. Elasticsearch 편하게 쓰는걸 원하신다면 AWS 에 있는 서비스 추천입니다. 기업 서비스용이라면 100% 추천입니다. kibana 까지 이용하실려면 vpc 가 아닌 ip 기반으로 관리를 선택하세요 그러나 가난한 개인 개발자라면 한달에 EC2 가격만 해도 부담이 되겠지요. 이 글은 가난한..
요즘 바빠서 글을 잘 못 남기지만 정말 추천할 만한 포스트가 있어서 추천합니다. 간단한 파이썬 코드만 알면 요즘 유행하는 블록체인의 기본 원리를 알고 응용이 가능합니다. 쭈욱 따라하시면 됩니다. http://ecomunsing.com/build-your-own-blockchain 끝으로 요즘 여러 이야기가 있지만, 저는 블록체인을 흠잡을 이유가 없습니다. 분산 저장은 시대에 맞는 트렌드라고 봅니다. 다만 거래소가 안전하냐는 이야기는 절대 반대입니다. 돈이 오고 가는 서비스를 그리 허술하게 만들면 안된다고 봅니다.
crontab 으로 스케쥴 잡 등록 시키기 python 과 crontab 을 잘 연결시키면 스케쥴 작업을 완벽하게 만들 수가 있습니다. 간단한 배치 작업들은 굳이 다른 시스템을 사용할 이유가 없습니다. 기본 editor 를 emacs 로 변경하기 $ export EDITOR=emacsclient 아무 설정을 하지 않으면 vi 로 설정되어 있습니다. 기본적인 기능 CRUD 에서 U 는 C 와 동일하니 기능을 살펴보기로 합니다. 입력 (Create) $ crontab -e 보기 (Read) $ crontab -l 지우기 (Delete) $ crontab -d 주기 결정 * * * * * 분(0-59) 시간(0-23) 일(1-31) 월(1-12) 요일(0-7) 실제 예 * * * * * ls -la 인코딩 관..
Emacs 의 Org 모드를 이용해서 간단하게 제작한 Slide 이다. 추후에 KeyNote 버젼을 만들기 전 아이디어 정리 단계로 제작해 본 것이다.
클라우드 서비스의 종류 클라우드 서비스를 이용해서 자체 서비스를 개발하는 것은 이제 흔한 일이 됐습니다. 저는 처음 클라우드가 만들어졌을 때 대체 이걸 어떻게 상용화 할까? 라고 생각했지만 무엇인가를 팔고 이윤을 남기기 위한 인간의 욕망을 무시하면 안된다는 것을 잘 알게 됐습니다. 그렇다면 클라우드의 종류인 IaaS (Infrastructure-as-a-Service) 와 PaaS (Platform-as-a-Service) 와 SaaS (Software-as-a-Service) 는 어떻게 차이가 있는가? 위 그림에서 가장 쉽게 이야기 해주고 있습니다. IaaS 는 Host에 주안을 두는 것이고, PaaS 는 build 에 주안점, SaaS 는 consume 입니다. 이보다 더 자세하고 명확하게 알아보기 ..
예전에 Emacs for OSX 관련 설치글에서 File Dired Mode 에서 한글이 깨지는 문제는 (require 'ucs-normalize) (set-file-name-coding-system 'utf-8-hfs) 위 내용을 .emacs 에 써주면 된다고 했습니다. 그런데 shell-mode 에서 한글이 제대로 출력이 안되는 이슈가 존재합니다. 역시 .emacs 에 (setq default-process-coding-system '(utf-8-hfs . utf-8-hfs)) 와 같은 내용을 써주면 해결됩니다.
프로그래밍 언어는 python을 이용하고 웹 프레임워크는 Django 를 사용하고, 데이타베이스로는 MySQL 을 사용중인데 admin 사이트 구현중에 date_hierarchy = 'created_at' 이 구문 때문에 Database returned an invalid value in QuerySet.dates(). Are time zone definitions and pytz installed? 이런 에러가 발생한다. 해결을 위해서는 일단 pytz 를 설치해줘야 한다. $ pip install pytz 그리고 우분투에 설치된 mysql 에 한하여 (docker 로 설치한 mysql 도 괜찮다, 테스트 해보니 osx 도 된다) $ mysql_tzinfo_to_sql /usr/share/zoneinfo..
각각의 request_log 에 application_log 가 딸려있다. 그리고 각각의 어플리케이션 로그는 형식에 맞춰서 로그를 남길 수가 있으며 위 사진을 보면 알 수 있듯이 각각의 아이콘 그림까지 다르다!!
A 라는 브랜치에서 B 의 브랜치를 merge 하는 경우라고 치면 $ git checkout A $ git merge B 로 A 에다가 B 내용을 merge 하는 명령입니다. > 즉 위쪽에 있는 것이 (보통 git 에서는 HEAD 라고 붙어 있습니다.) 현재 내가 작업하던 브랜치 , 아래쪽이 다른 브랜치 (pull 명령중이면 리모트 브랜치)의 내용이니 비교해서 적용하면 됨
클로져(Closure)에 대한 말들은 많다. 최근 핫하다고는 하지만 전산의 태동기부터 존재하던 문법이다. 1급 객체(First class Object)를 지원하는 언어는 자연스럽게 지원하지만 개념 자체를 이해 못하는 경우가 많다. 파이선과 연계해서 클로져(Closure)를 설명하는 좋은 설명이 있어서 소개하고자 한다. Objects are data with methods attached, closures are functions with data attached. 객체는 메서드가 달라붙어 있는 데이타라면, 클로져는 데이타가 달라붙은 함수이다. 예제는 def make_counter(): i = 0 def counter(): # counter() is a closure nonlocal i i += 1 ret..