전체 글
-
카프카의 이해BigData 2021. 3. 26. 15:05
카프카(Kafka)의 이해 Kafka 2019. 1. 17. 11:55 대용량 게임로그 수집을 위해 Elastic Stack을 도입하게 되었는데, 중간에 버퍼역할(메시지큐)을 하는 Kafka에 대서 알아보려고 한다. 메시지큐? 메시지 지향 미들웨어(Message Oriented Middleware: MOM)은 비동기 메시지를 사용하는 다른 응용프로그램 사이의 데이터 송수신을 의미하는데 MOM을 구현한 시스템을 메시지큐(Message Queue:MQ)라 한다. 카프카란? 분산형 스트리밍 플랫폼(A distributed streaming platform)이다. LinkedIn에서 여러 구직 및 채용 정보들을 한곳에서 처리(발행/구독)할 수 있는 플래폼으로 개발이 시작 되었다고 한다. (발행/구독: pub-s..
-
[Python]문자열로된 날짜 datetime으로 변환python 2021. 3. 26. 14:43
"2016-01-01" 이라는 문자열을 아래와 같이 사용하면 datetime 객체로 변환 가능 import date test_date="2016-01-01" convert_date = datetime.datetime.strptime(test_date, "%Y-%m-%d").date() "20160101"이라는 문자열을 아래와 같이 사용하면 역시 변환 가능 import date test_date="20140206" convert_date = datetime.datetime.strptime(test_date, "%Y%m%d").date() 결과 값은 전부 "2016-01-01"의 datetime 객체 형태로 반환된다. 아래와 같이 strftime을 사용하여 현재일의 년월일을 문자열로 구할 수 있다. toda..
-
앱 플랫폼 개발 : Vert.x 개념, Listen 프로젝트 예제vert.x 2021. 3. 26. 14:24
Vert.x Eclipse Vert.x는 JVM에서 반응성 애플리케이션을 개발하기 위한 이벤트 기반 툴킷으로, 비동기식 통신을 위해 설계되었습니다. Vert.x의 가장 기본적인 이점은 이벤트 기반 및 비차단 접근 방식으로 소수의 커널 스레드를 사용하여 많은 처리를 하는 것입니다. 이러한 방식으로 최소한의 하드웨어로 애플리케이션 확장 수행할 수 있습니다. 동기식 I/O 스레드 모델에서 알 수 있듯이 네트워크 통신은 각 클라이언트에 스레드를 할당하여 관리됩니다. 즉, 클라이언트에 할당된 스레드가 연결이 끊길 때까지 클라이언트를 처리합니다. 그러나 이벤트 기반 프로그래밍 모델을 제공하기 때문에 Vert.x를 사용하여 코드를 단일 스레드 애플리케이션으로 쓸 수 있습니다. Vert.x 코어 라이브러리는 비동기 네..
-
직접 겪어봐야 깨닫는 투자 원칙들주식공부/투자원칙 철학 2021. 3. 26. 13:49
I. 종목 발굴 영역 1. 잘 모르는 기술주에 투자했다가 대체재 출현에 실적이 폭락해서 -50%에서 눈물을 머금고 손절할 때 → 자기가 아는 것에 투자하라 2. “우리 집 주방도 한샘으로 싹 뜯어고치고 싶다”라는 지인의 말을 듣고 흘렸다가 2년 뒤 한샘의 주가를 보고 땅을 치고 후회했을 때 → 생활 속 투자 아이디어를 발굴하라 3. 대표이사가 직접 설명하는 화려한 기업설명회를 듣고 나서 재무제표도 자세히 보지 않고 주식을 매수했는데 해당 회사가 비적정 감사의견을 받았을 때 → 철저히 분석하라 4. 나름 분기 실적을 예측하고 분기 실적 모멘텀주를 샀는데 자기 실적 예상이 빗나가서 손절할 때 또는 예상은 맞았는데 호실적이 이미 주가에 반영되어서 실적 발표 후 오히려 주가가 하락할 때..
-
투자 과정은 발굴→매수→매도가 아니라 탐색→선별→인내→매수→동업→매도→복기주식공부/투자원칙 철학 2021. 3. 26. 13:47
가치투자는 좋은 기업을 싸게 사서 제값에 파는 방법입니다. 이 방법에 기반했을 때 가치투자자는 크게 세 가지 위험에 노출됩니다. 1. 좋지 않은 기업을 사는 위험 2. 비싸게 사는 위험 3. 제값에 도달하기 전에 파는 위험 1) 손절하는 위험 2) 조금 올랐을 때 파는 위험 제 경험상, 투자 과정을 철저히 세분화하면 위 세 가지 위험을 줄이는 데 조금이나마 도움이 되는 것 같습니다. 즉, 투자 과정을 발굴→매수→매도가 아니라 탐색→선별→인내→매수→동업→매도→복기로 세분화하고 각 과정을 철저히 지켜나가는 것입니다. 그러면 좋지 않은 기업을 비싼 가격에 덥석 샀다가 손절하는 등의 실수를 줄일 수 있습니다. 그럼 각 과정을 하나씩 살펴보겠습니다. 1. 탐색 탐색 과정에선 편견 없이 최대한 많은 종목을 ..
-
‘가치투자는 무조건 장기투자다’라는 오해 (부제: 가치투자 종목 유형)주식공부/투자원칙 철학 2021. 3. 26. 13:25
투자를 시작한지 얼마되지 않은 투자자가 가장 많이 하는 오해중의 하나는 ‘대형우량주 하나를 사서 10년, 20년 팔지 않고 장기투자하면 엄청난 부자가 될 수 있다’라는 것입니다. 하지만, 예를 들어, 경기순환주에 가까운 대한민국 대표 주식 삼성전자를 스노우볼주로 착각하고 잘못된 시점에 매수하고 그저 장기보유한다면 연평균수익률은 그다지 높지 않을 수도 있습니다. 종목별로 특징을 파악하고, 그에 따라 매수시점, 매도시점, 비중을 달리해야 투자 수익률은 극대화 될 수 있습니다. 따라서, 종목의 유형을 이해하고 각각의 특징, 매수시점, 매도시점 등을 이해하는 것은 가치투자를 시작하는데 있어서 아주 중요한 첫걸음입니다. 1. 스노우볼주 (Snowball) - 특징: 원재료 가격이 오를 때 제품 판매 가격을 올릴 ..
-
자바 concurrent 프로그래밍 기본java 2021. 3. 26. 11:29
process와 thread 프로세스(Process): 컴퓨터에서 연속적으로 실행되고 있는 프로그램을 말하는 것으로 여러개의 프로세서를 사용하면 멀티프로세싱이고 여러개의 프로그램을 같은 시간에 시분할 방식으로 돌리면 멀티태스킹이라 말한다. 쓰레드(Thread): 프로세스내에서 실행되는 흐름의 단위를 말하는 것으로 하나의 프로그램은 최소한 하나의 쓰레드(main thread)를 가진다. 프로그램에 따라 둘 이상의 쓰레드를 동시에 실행할수 있는데 이를 멀티쓰레드라고 부른다. I/O와 NIO 5주차- 대규모트래픽 분산처리를 위한 자바 서버개발 문서에 자바 기본 I/O와 NIO에 대한 설명을 볼 수 있다. thread 사용의 위험성 race condition 상황이 발생함. 여러 개의 thread가 동시에 실행..
-
대규모 트래픽 분산처리를 위한 서버개발 지식vert.x 2021. 3. 26. 11:27
부제: NIO부터 Netty까지 Introduction 인터넷 사용 인구의 폭발적인 증가와 글로벌한 소셜서비스들로 인해 대용량 트래픽처리와 데이터캐싱, 비동기처리 등은 현대의 서버 개발환경에서 늘 마주하게 되는 주제들입니다. 5주차스터디에서는, JDK1.4+ 부터 제공되는 NIO와 이를 wrapping한 Netty를 학습하고, 효율적인 방법을 토론합니다. JAVA IO 기본 stream이란? 스트림은 데이터 소스(File, DB, Socket)에 저장되어 있는 데이터를 다른 데이터 소스에 전달하고자 할 때 사용한다. 키보드의 입력을 모니터에 출력할 때도 스트림을 사용한다. stream 특징 stream은 FIFO(first in first out, 선입선출)이다. stream은 단방향이다. 자바에서는 읽..