전체보기(214)
-
아파치 카프카(Kafka) : 설치 및 실행 - 1 of 3
아마도 카프카는 여러 용도(높은 처리량이 필요한 통계 집계&처리, 메세지 처리 등)가 있지만 플룸과 비교했을때 목적이 다소 다르다. (많이 다르다고 해야할수도) 어느쪽으로 전달하게 된다는 주 목적은 같지만 어느 정도의 용량을 어떻게 분산처리할까 말까에 대한 선택지에서의 대용량 분산처리와 메세지 처리라면 카프카쪽이, 단순히 로그파일의 적재에 따른 전달, 분류, 적재에만 포커스를 맞춘면 플룸쪽이 나을 것으로 판단된다. (말은 누가 못하리) 이벤트 버스, 이벤트 드리븐, 옵저버 패턴이 시조새 안드로이드 개발을 하다보면 정말 한번쯤은 들어볼수밖에 없는 라이브러리가 있는데 다름아닌, 바로 "이벤트 버스(event bus)"이다. 아주 간단히 설명하자면, 버스는 정해진 목적지(밤깊은 마포종점~)를 가지고 계속 한쪽..
2020.04.27 -
소셜 애니멀 감상평 - "관계", 완벽한 친밀함을 위하여
소셜 애니멀 국내도서 저자 : 데이비드 브룩스(David Brooks) / 이경식역 출판 : 흐름출판 2016.08.10 상세보기 나를 형상화시키는 "관계" 사회, 인간 그리고 관계와 사랑에 대한 이 서적을 빌리기위해서도 나는 관계를 맺게 되어있었고 실제로도 그렇게 관계를 맺었다. 이러한 관계(Relation)이라는 연결띠가 없이는 우리는 무엇도 할 수 없다. 아주 단순하게 생각해서 내가 이 서적을 빌린 것이 아니라 서점에 사러갔다고 가정하더라도 이를 진열해놓은 사람과 이를 계산해주는 사람이 없다면, 그리고 그 마주함과 지불이라는 약속된, 협의된 어느 정도 거리적 친밀의 관계가 형성되지 않으면 나는 이 서적을 구매할 수가 없다. 이처럼 우리는 태어나 부모라는 가족적인 관계, 그 울타리를 벗어나면 학교와 ..
2020.04.25 -
Flume 설치 및 기본 설정, sink 테스트 - mongoDB sink 2 of 2
몽고DB로 적재할 원천 데이터는 심플하게 키와 밸류로 이루어진 json이 들어있는 "로그파일"이며, (이 로그파일은 웹서버 등에서 자동으로 적재될 것을 가정하였기에 테스트 단계에서는 수동으로 파일을 생성하였다) 전체적인 동작은 flume-ng 가 로그파일들을 읽어서(spooldir이라는 방식사용) sink로 보내면 sink가 몽고DB로 보내는 모양이며, 공식 레퍼런스 그림을 토대로 재구성하여 주석을 달면 아래와 같다. (빨간색) 오늘의 조리법은 크게 다음과 같다. (1) 로컬 mongo db 셋팅 : flume database, admin 유저, json 컬렉션, 유저 권한 셋팅 (2) flume.conf 파일 셋팅 : spooldir 방식 (3) mongo db로 로그파일의 json을 insert하는 ..
2020.04.24 -
Flume 설치 및 기본 설정, sink 테스트 - mongoDB sink 1 of 2
플룸 설치 및 기본 설정을 통해 telnet 으로 logger 를 보는 sink를 지난 포스트에서 해보았다면 이번에는 sink 방식을 mongoDB와 연결하는 방식이다. 지난시간과 마찬가지로 나는 아직 나의 mac을 중고로운 평화나라에 팔지 않은 상태이므로 아래의 모든 내용은 mac을 기준으로 한다.. 오늘의 요리 순서는 다음과 같다. (1) flume.conf 파일 수정 : mongoDB sink 향으로 수정 (2) mongoDB sink 를 수행하는 java jar 만들기 (3) sink jar를 flume의 lib 디렉토리에 넣기 (4) flume 실행 [ 사전 준비 ] 미리 준비해야 할 사항은 로컬에 mongoDB client 가 설치되어 있는 편이 좋으며, 사전지식으로 java 패키지를 jar로..
2020.04.21 -
Flume 설치 및 기본 설정, sink 테스트 - logger sink
나중을 위해서라도 기본 환경에서 크게 벗어나지 않은 심플(하지 않지만..)버전의 플룸의 설치와 설정, sink를 기록해본다.. 아래 전부는 mac 환경을 기준으로 하고 있다. "1 소스 - 1채널 - 1싱크" 구조의 로컬 테스트를 위한 전체적인 셋팅 순서. (1) flume 설치 (2) 맥 환경변수 설정 / flume 실행 스크립트 내의 변수 설정 (3) flume의 기본 설정파일을 복사해서 수정 (4) flume 실행 (5) "데이터 소스 연결" : 로컬 환경에서 flume쪽으로 정보를 전송해서 수신하는지 확인 (1) flume 설치 - homebrew를 통해서 설치 1) 홈브류(HomeBrew) 레파지토리 최신화 $ ruby -e "$(curl -fsSL https://raw.githubusercon..
2020.04.20 -
모바일앱의 필수개념, 프로세스와 쓰레드
프로세스와 쓰레드 모바일 개발을 위해서 꼭 거쳐야 하는 작은 관문이 하나있다. 어려운 개념은 아니지만 이를 이해하지 못한 상태에서 앱을 개발하다보면 크래시 현상으로 원인을 찾지 못하는 경우도 있고 (물론 크래시가 날때 로그창에서 로그로 원인을 알려주지만) 하여 간단히 "프로세스"와 "쓰레드"의 개념을 잡고 가야한다. 프로세스 컴퓨터를 살때 CPU에 듀얼코어, 헥사코어라며 성능이 좋아요~ 따봉을 많이 받은 리뷰를 본적이 있을 것이다. 그 코어가 프로세스라고 생각하면 된다. 프로세스는 독립적으로 행동을 보장받는 "공간"이기때문에 보통은 앱들을 동시에 사용하는 멀티태스킹(스마트폰 초기에 아주 획기적인 기능이었다..)이 가능하게 되고, 멀티 태스킹이라는 말 자체가 멀티 프로세스로 여러개의 앱이 서로의 독립적인 ..
2020.04.16 -
[뉴필로소퍼 2020년 1월호 감상평] 지독하도록 평등한 이름, "죽음"
뉴필로소퍼 NewPhilosopher (계간) VOL.9 국내도서 저자 : 뉴필로소퍼 편집부 출판 : 바다출판사 2020.01.05 상세보기 사람이 언제 죽는다고 생각하나? 사람들에게 잊혀질때다 시시콜콜한 철지난 우스갯소리 유머집 귀퉁이의 허튼 소리나 오탈자 따위가 아니다. 위의 이 한 문장만으로 많은 이들에게 사랑받고 있는 그 만화를 떠올린다면 반쯤은 성공한 셈이다. 미리 언지하지만 이 글은 만화 이야기를 하려는 것은 아니다. 피하고자 했던 어떠한 현상에 대해 담담한 어조로 담소를 나누어야 하는 그 어색함과 마주하려할때 잠시나마의 헛기침으로 감정을 추스려보는, 어쩌면 그 정도 즈음의 통과의례적으로 문을 열어야만 하는 뻔한 문구쯤으로 여겨주었으면 한다. "죽음". 이토록 비정하고 차가운 명사 어휘가 또 ..
2020.04.11 -
[유튜브 강의] Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 4 (서버편 완결)
▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb9oqG4CtZ5H4m_NSD1GYA?sub_confirmation=1 + 여기에는 없는 mongoDB Atlas 도 팁으로 알려드립니다 (간단해요~) [ Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) 목차 ] 1. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 1 2. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 2 3. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 3 4. Node js 와 mongoDB, Heroku(헤로쿠)로 ..
2020.03.11 -
센치한 개발자 유튜브 방송 챕터표
방송 회차가 많아지고 시청해주시는 분들도 늘어나서 이에따라 방송을 어떻게 어떠한 순서로 들어야할지 감을 잡기 어려우신 분들을 위해 방송 주제별로 정리하고자 합니다. (이에 각 챕터의 첫 편을 기준으로 작성하였습니다.) 본 페이지는 계속해서 업데이트 예정입니다. (1) 자바 기초 1) 방송 리스트 : https://www.youtube.com/playlist?list=PLva6rQOdsvQWdmNcSu_o_nrsKwihxAeMT 자바 기초 강의 - [센치한 개발자] - YouTube 저렴하고 깊이 없는(?) JAVA, Android, Swift, iOS 강의를 제공하려고 노력중입니다. www.youtube.com (2) 안드로이드 1) 채팅앱 만들기 - 총 3편 : https://www.youtube.co..
2020.03.08 -
[유튜브 강의] Node js 와 mongoDB, Heroku(헤로쿠,히로쿠)로 만드는 다이어리앱 (서버편) - 3
▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb9oqG4CtZ5H4m_NSD1GYA?sub_confirmation=1 [ Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) 목차 ] 1. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 1 2. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 2 3. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 3 4. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 4 (서버편 완결) 1,2편에 이어서 다이어리 내..
2020.03.07 -
[유튜브 강의] Node js 와 mongoDB, Heroku(헤로쿠,히로쿠)로 만드는 다이어리앱 (서버편) - 2
▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb9oqG4CtZ5H4m_NSD1GYA?sub_confirmation=1 [ Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) 목차 ] 1. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 1 2. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 2 3. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 3 4. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 4 (서버편 완결) [ 사전 준비 ] (1) 소스..
2020.02.29 -
Xcode의 유용한 단축키
Xcode의 유용한 단축키 파일 바로 찾기 ⌘ + ⇧ + O 클래스에서 특정 라인으로 이동 ⌘ + L 코드 자동정렬 원하는 코드를 블럭으로 씌운뒤 control + I (대문자 i)
2020.02.28 -
mongoDB의 realm 인수, 앞으로의 로드맵은?
[ mongoDB의 realm 인수 ] 몽고DB가 렘(realm)을 인수한 지 어느덧 1년이 다 되어가고 있는 시점에서 현재 몽고DB 어떤 방향으로 두 데이터베이스가 통합 또는 조화를 이룰지 궁금했습니다만, 현재 몽고DB는 2020년 중반까지 몽고DB 렘의 공개 베타 출시를 목표로 하고 있다고 합니다. 각종 트리거, 인증, 데이터 접근(엑세스)를 포함하여 데이터베이스의 실시간 동기화 기능에도 심혈을 기울이고 있으며, 지난 여름 몽고DB 기술자들을 코펜하겐으로 파견하여 렘의 자원을 증가시키는 등 몽고와 렘의 통합 SDK 패키지도 준비중인 것으로 보입니다. 이러한 것으로 보았을때 쿼리(Query)베이스 기반의 실시간 싱크 기능을 가진 렘과 몽고DB를 결합하면 보다 강력한 쓰레드 세이프 + 퍼포먼스 데이터베이..
2020.02.19 -
[유튜브 강의] Node.js 와 mongoDB, Heroku(헤로쿠,히로쿠)로 만드는 다이어리 앱 (서버편) - 1
▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb9oqG4CtZ5H4m_NSD1GYA?sub_confirmation=1 [ Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) 목차 ] 1. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 1 2. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 2 3. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 3 4. Node js 와 mongoDB, Heroku(헤로쿠)로 만드는 다이어리앱 (서버편) - 4 (서버편 완결) *. 참고 공식 사이트 htt..
2020.01.29 -
부산 1박 2일 혼자여행, 혼행 일기
2019년 12월 14일, 15일 부산으로 혼자 여행을 떠났습니다. 이 나이 먹도록 부산을 한번도 가본적도 없고, KTX도 타본적이 없다니.. 나는 무슨 삶을 살았나~ 싶은 생각에 과감히(?) 기차 예약을 하고 부산으로 떠났습니다. 이번에도 그렇듯 제 여행기는 일정 순서없이 느낌대로 올립니다.. (순서대로 정리 귀찮...) 기회가 된다면.. 언젠가는 부산에 내려가서 살고 싶다는 생각이 들었습니다. 같은 대한민국인데도, 30여년 지나도록 늘 말로만 듣던 곳에 가보니 가슴이 뛰어서 전날 잠을 제대로 못잤고.. 갔다와서는 꽤 오래도록 부산이야기를 지인들에게 하며(지인들은 이미 어릴적에 다녀와봐서 감흥이 없...) 좋은 인연(이성이런것을 떠나서 동성이라도 대화와 추억을 공유하는)은 없었다는 사실에 조금 아쉬워했..
2019.12.08 -
[유튜브 강의] (10) swift 강좌 : 뉴스앱 만들기 & 테이블뷰(UITableView) - 3)
[센치한 개발자-유튜브 강의] (10) swift 강좌 : 뉴스앱 만들기 & 테이블뷰(UITableView) - 3) 안녕하세요 swift 강좌 10번째 시간입니다~ swift 기초 문법을 배우시면서 ios 앱개발을 하실 수 있도록 도와드립니다. *. 이번시간은 테이블뷰를 활용한 세번째 시간으로 지난 방송으로 익힌 테이블뷰를 통해 HTTP 통신으로 뉴스 정보를 서버에서 받아와서 초간단 뉴스앱을 만들어보는 시도를 도와드립니다~ 다음 방송은 뉴스의 간략 본문으로 이동하는 방법을 알아보겠습니다~ 오늘도 즐튜브 해주세요~ ▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb9oqG4CtZ5H4m_NSD1GYA?sub_confirmation=1
2019.12.01 -
센치한개발자 유튜브 구독자 5천명 감사 인사
유튜브채널 센치한 개발자 구독자 5천명 감사 이벤트! (~19.12.07마감) 유튜브 구독자수가 어느새 5천명이 되었습니다~ 구독자가 5명, 50명, 500명일때에도 항상 변함없이 열심히 공부해주시고 구독해주신 시청자분들이 계셨기에 지금 이만큼의 구독자수가 된 것 같습니다~ 최근에는 얼굴 노출(?)하는 방송이 별로 없다보니 조금 소원한 바가 있어.. 감사 인사는 직접 드려야 겠다는 생각으로 방송을 하게 되었습니다! 사실 제가 드립을 하는 방송을 하는 것도 좋아하지만, 아무래도 학습을 위한 방송이다보니 제 면모(?)가 다 드러나지 않게 절제한 진지방송이 많은것 같아 아쉬웠다는 생각이 드네요..ㅠ 앞으로 구독자가 1만명, 5만명, 그 이상이 되는 날까지 열심히 방송하겠습니다! 혹시나 유튜브를 꿈꾸고 계신 개..
2019.12.01 -
[유튜브 강의] (9) swift 강좌 : 뉴스앱 만들기 & 테이블뷰(UITableView) - 2) 기초
[센치한 개발자-유튜브 강의] (9) swift 강좌 : 뉴스앱 만들기 & 테이블뷰(UITableView) - 2) 기초 안녕하세요 swift 강좌 9번째 시간입니다~ swift 기초 문법을 배우시면서 ios 앱개발을 하실 수 있도록 도와드립니다. *. 아이폰 개발은 테이블뷰로 시작해서 테이블뷰로 끝나는 것 같습니다! 그 UITableView를 자유자재로 다루실 수 있도록 기초부터 실전까지 다뤄드립니다~ 이번시간은 그 두번째 시간으로 스토리보드와 id 방식을 통해 테이블뷰를 만들어볼 수 있게 도와드립니다~ 다음 방송은 만들어진 테이블뷰를 통해 실제 인터넷에서 뉴스정보를 받아와서 화면에 표시하는 네트워크 + json 뉴스앱 기초 방송입니다. 오늘도 즐튜브 해주세요~ ▶︎ 센치한 개발자 유튜브 구독하기 : ..
2019.12.01 -
[유튜브 강의] (8) swift 강좌 : 뉴스앱 만들기 & 테이블뷰(UITableView) - 1) 기초
[센치한 개발자-유튜브 강의] (8) swift 강좌 : 뉴스앱 만들기 & 테이블뷰(UITableView) - 1) 기초 안녕하세요 swift 강좌 8번째 시간입니다~ swift 기초 문법을 배우시면서 ios 앱개발을 하실 수 있도록 도와드립니다. *. 아이폰 개발은 테이블뷰로 시작해서 테이블뷰로 끝나는 것 같습니다! 그 UITableView를 자유자재로 다루실 수 있도록 기초부터 실전까지 다뤄드립니다~ 이번시간은 그 첫시간으로 임의의 cell로 샘플 테이블뷰를 만들어볼 수 있게 도와드립니다~ 이 방송에서 부터 테이블뷰를 익혀두셔야 앞으로 진행할 앱에서 무리가 없으실 거예요~ 오늘도 즐튜브 해주세요~ ▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb..
2019.11.27 -
[유튜브 강의] (7) swift 강좌 : 웹뷰(WKWebView), 옵셔널 바인딩(optional binding)
[센치한 개발자-유튜브 강의] (7) 웹뷰(WKWebView), 옵셔널 바인딩(optional binding) 안녕하세요 swift 강좌 7번째 시간입니다~ swift 기초 문법을 배우시면서 ios 앱개발을 하실 수 있도록 도와드립니다. 이번 방송은 웹뷰인 WKWebview 를 통해 웹페이지를 표시하는 방법과 여기서 처음 등장하는 옵셔널 바인딩(optional binding) 문법을 알려드립니다~ 오늘도 즐튜브 해주세요~ ▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb9oqG4CtZ5H4m_NSD1GYA?sub_confirmation=1
2019.10.30 -
[유튜브 강의] (6) swift 강좌 : xcode11을 통한 swiftUI, 샘플프로젝트 리뷰
[센치한 개발자-유튜브 강의] (6) swift 강좌 : xcode11을 통한 swiftUI, 샘플프로젝트 안녕하세요 swift 강좌 6번째 시간입니다~ swift 기초 문법을 배우시면서 ios 앱개발을 하실 수 있도록 도와드립니다. 이번 방송은 지난 방송에 이어 xcode 11 에서 등장한 swift ui 의 샘플 프로젝트를 살펴보고 어떻게 대응해야하는지 알려드립니다. 오늘도 즐튜브 해주세요~ ▶︎ 센치한 개발자 유튜브 구독하기 : https://www.youtube.com/channel/UCvb9oqG4CtZ5H4m_NSD1GYA?sub_confirmation=1
2019.10.30