Monthly Archives: December 2015

[JAVA]시간변환 유틸 TimeUnit

이전에는 interval 기준으로 1000*x초 라는식으로 변환해서 계산을 했을데 이걸로 쓰면 좀 더 명확해서 좋은듯.

[Linux] scp 사용

사용법

 

 

백그라운드 사용시 앞에 nohup 뒤에 & 붙이면 된다

 

https://docs.oracle.com/cd/E37933_01/html/E36613/remotehowtoaccess-55154.html

[Ubuntu] redis 설치

패키지로 설치

add-apt-repositoy가 안되면 이거 설치 후 재실행

 

레디스 서버 설치

설정파일

/etc/redis/redis.conf

소스 설치

설정 도움 스크립트

[redis dir]/utils/install_server.sh

 

설정파일

[redis dir]/redis.conf

 

 

실행모습

 

[Ubuntu] add-apt-repository not found

The following extra packages will be installed:
python-pycurl python3-pycurl python3-software-properties unattended-upgrades
Suggested packages:
libcurl4-gnutls-dev python-pycurl-dbg python3-pycurl-dbg bsd-mailx
mail-transport-agent
The following NEW packages will be installed:
python-pycurl python-software-properties python3-pycurl
python3-software-properties software-properties-common unattended-upgrades

 

java.Validator 부족한 부분

상황을 지정할 수 있으면 어떨까

@NotNull
private String name;

@NotNull(scene = 1)
private String email;

 

위 두개의 필드가 있는 dto에서

상황 0 : 모두 동작
name, email notnull을 모두 체크

상황1 : 1만 동작
email만 체크

상황2 : 기본만 동작
name만 체크

 

이렇게 하면 validator에서 여러 상황을 복수로 셋팅할 수 있게됨

 

 

[MQ,CEP] 0. 개요 및 구조 정의

MQ라는 것에 맨 처음 관심을 갖게된 계기는..

지금의 분류로는 빅데이터로 볼 수 있는 증권데이터였다

 

목표는 실시간 분석이었는데 그 때도 SQL로 처리하는 것은 포기했었다.

어차피 시간순서대로 사용되는 데이터니 파일로 저장하고 순차적으로 쓰려고 했었는데 실시간 분석이 안되는게 또 문제라서 중간 버퍼에 메서드를 필터로 깔아놓고 돌리는 방법을 썼었다.

당시 뭐 설계 구조도 좀 안좋았고 해서 속도도 안나오고 해서 포기했었는데(지금 보니 코드도 안좋다)

요즘 빅데이터나 실시간 분석 솔루션이 많이 나오면서 다시 관심을 갖게 됐다.

 

당시 원했던 구조는

  1. 세개가 연결된 구조 : 진입 ==> 필터(스크립트언어, java osgi) ==> 탈출
    ==>>==>>==>>==>>==>>==>>
    in[] ==> brane[] ==>out[]
  2. control api : 1번을 조작하는 api

추가로 생각한 부분은

in -> grabber, receiver

out -> shotter, deliverer

filter->aggregator, wiper

 


요즘 나와있는 툴

  1. fluentd는 보니 번은은 구현 돼 있다

http://www.fluentd.org/

 

2. kafka

http://kafka.apache.org/

 

3. logstash

https://www.elastic.co/products/logstash

 

4. flume

https://flume.apache.org/

 

5. rabbitmq

https://www.rabbitmq.com/