-
[비공개] 잡 스케쥴러
node.js를 매우 오랜만에 사용하는데.. 서버가 아니라 데몬으로 돌아가는클라이언트(기존에 모니터링 에이전트로 파이썬 + grpc를 쓰는데 너무 구려서 노드 grpc로 결정)로 사용하려고 하니... 으잉?? 서버는 클라이언트에서 요청이 올때 처리하면 되는데 클라이언트는 주기적으로 함수가 실행되게 어떻게 하지... 자바스크립트의 setTimeout나 setInterval을 사용해야 하나 하다가 구글에 물어보니 node-schdule 같은 모듈이 있군요. 물론 다른것도 있지만이걸로 선택. 사용법은 매우 간단. cron 표현식도 지원함. $ npm install node-schedule 예제 1. 매분30초마다 실행하기 'use strict'; var lib = require('./lib'); var scheduler = require('node-schedule'); var rule = new scheduler.RecurrenceRule(); rule.second = 30; scheduler.scheduleJob(rule, function () { console.log('i am scheduler'); }); 예제 2. 크론 표현식..추천 -
[비공개] 우분투에 haproxy 설치하기
L7 로드발란서 HAProxy 설치하기설치 환경 : 우분투 14.04 64bitHAProxy 다운로드다운로드 주소 보기 :http://www.haproxy.org/#down현재 최신버전 1.6.4 주소 :http://www.haproxy.org/download/1.6/src/haproxy-1.6.4.tar.gz$ wget http://www.haproxy.org/download/1.6/src/haproxy-1.6.4.tar.gz--2016-05-0314:00:44-- http://www.haproxy.org/download/1.6/src/haproxy-1.6.4.tar.gzResolving www.haproxy.org (www.haproxy.org)...195.154.117.161,2001:7a8:363c:2::2Connecting to www.haproxy.org (www.haproxy.org)|195.154.117.161|:80... connected.HTTP request sent, awaiting response...200OKLength:1559276(1.5M) [application/x-gzip]Saving to: ‘haproxy-1.6.4.tar.gz’100%[======================================>]1,559,276206KB/s in 11s u2016-05-0314:00:56(139KB/s) - ‘haproxy-1.6.4.tar.gz’ saved [1559276/1559276]압축 해제 : $ tar zxvf haproxy-1.6.4.tar.gzmake로 컴파일 하기압축 해제후 README 파일을 열어보면 TARGET를 지정해주라고 나와있음- linux22 ..추천 -
[비공개] 센트OS 7 방화벽 관리하기
방화벽 시작, 정지$ systemctl start firewalld.service$ systemctl stop firewalld.service방화벽 상태 확인하기$ firewall-cmd --state방화벽 활성된 zone 확인하기$ firewall-cmd --get-active-zones방화벽에 등록된 서비스 확인하기$ firewall-cmd --get-service방화벽 pubiczone에 open된 서비스 확인하기$ sudo firewall-cmd --zone=public--list-services방화벽 pubiczone에 open된 포트 확인하기$ firewall-cmd --zone=public--list-ports방화벽 pubic zone에 서비스나 포트 추가하기$ sudo firewall-cmd --permanent --zone=public--add-service=https$ sudo firewall-cmd --permanent --zone=public--add-port=3306/tcp방화벽 pubiczone에 서비스나 포트 삭제하기$ sudo firewall-cmd --permanent --zone=public--remove-service=https$ sudo firewall-cmd --permanent --zone=public--remove-port=3306/tcp설정 적용하기$ sudo firewall-cmd --reload자세한 내용은https://fedoraproject.org/wiki/FirewallD참조firewall-cmd -h추천 -
[비공개] 라즈베리파이에 오라클 자바 8 설치하기
중간에 설치 동의$ su root$ echo"debhttp://ppa.launchpad.net/webupd8team/java/ubuntutrusty main"> /etc/apt/sources.list.d/webupd8team-java.list$ echo"deb-srchttp://ppa.launchpad.net/webupd8team/java/ubuntutrusty main">> /etc/apt/sources.list.d/webupd8team-java.list$ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886$ apt-get update$ apt-get install oracle-java8-installer$ java -versionjava version"1.8.0_77"Java(TM) SE Runtime Environment (build1.8.0_77-b03)Java HotSpot(TM) Client VM (build25.77-b03, mixed mode)추천 -
[비공개] 센트OS 7 마리아디비 설치
MariaDb 10.1 기준 (참고 https://mariadb.com/blog/installing-mariadb-10-centos-7-rhel-7)1. 레파지토리 파일 생성, 아래 내용 입력 $ sudo vi /etc/yum.repos.d/mariadb.repo [mariadb]name = MariaDBbaseurl = http://yum.mariadb.org/10.1/centos7-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1(최신 버전 주소는 http://yum.mariadb.org/ 참고)2. 서버와 클라이언트 설치하기 $ sudo yum install MariaDB-server MariaDB-client3. 루트 비밀번호 설정하기 $ sudo service mysql start $ /usr/bin/mysqladmin -u root password '' $ sudo service mysql restart4. 기본 캐릭터셋으로 utf8 설정하기 $ sudo mysqladmin shutdown -u root -p $ sudo vi /etc/my.cnf.d/server.cnf[client]default-character-set=utf8[mysql]default-character-set=utf8[mysqld]init_connect="SET collation_connection=utf8_general_ci"init_connect="SET NAMES utf8"character-set-server=utf8collation-server=utf8_general_ci5. 저장후 마리아디비 안전하게 ..추천 -
[비공개] ssh root 계정 비활성화 하기
$ sudo vi /etc/ssh/sshd_config파일 내용중 아래 항목이 #으로 주석처리 되어있는데 # 삭제후 yes를 no로 변경후 저장PermitRootLogin no$ sudo service sshd reload추천 -
[비공개] 라즈베리파이 파티션 설정
라즈베리파이 이미지를 구우면 파티션 용량이 sd카드의 전체로 설정되지 않음라즈베리파이 파일 시스템 사용량 확인 (4G sd카드인데 용량이 이상함..)$ df -hFilesystem Size Used Avail Use% Mounted on/dev/root1.2G 860M 246M78% /devtmpfs 214M0214M0% /devtmpfs 218M0218M0% /dev/shmtmpfs 218M4.4M 214M2% /runtmpfs5.0M4.0K5.0M1% /run/locktmpfs 218M0218M0% /sys/fs/cgroup/dev/mmcblk0p1 60M 20M 41M34% /boot파티션 확인하기$ sudo fdisk -l/dev/mmcblk0p1819213107112288060M c W95 FAT32 (LBA)/dev/mmcblk0p2131072774451176134403.6G83Linux파티션 확인 하기 fdisk에서 p$ sudo fdisk -u -c /dev/mmcblk0Welcome to fdisk (util-linux2.25.2).Changes will remain in memory only, until you decide to write them.Be careful before using the write command.Command (mforhelp): pDisk /dev/mmcblk0:3.7GiB,3965190144bytes,7744512sectorsUnits: sectors of1*512=512bytesSector size (logical/physical):512bytes /512bytesI/O size (minimum/optimal):512bytes /512bytesDisk..추천 -
[비공개] intellij + aws elastic beanstalk로 war ..
beanstalk 인텔리제이 플러그인이 업데이트 되서 15버전 지원https://plugins.jetbrains.com/plugin/7274?pr=idea환경설정에 설정빌드 설정톰캣 배포시httpd 에 reverse proxy로 배포 됨httpd ssl 설정하기추천 -
[비공개] 우분투 자바8 설치
$ sudo add-apt-repository ppa:webupd8team/java$ sudo apt-get update$ sudo apt-get install oracle-java8-installer추천 -
[비공개] viewpager에서 fragment 찾기
액티비티에 뷰페이저를 넣고 해당 인덱스의 fragment를 가져와서 사용하고 싶을 때index에 해당 숫자를 넣어주면됨Fragment fragment = getSupportFragmentManager() .findFragmentByTag("android:switcher:" + R.id.viewpager + ":" + index);추천