Search Results for '분류 전체보기'

231 POSTS

  1. 2018.01.14 window에서 nGrinder 설치 및 실행
  2. 2018.01.11 JAVA Redis Pool
  3. 2018.01.10 git ignore 설정
  4. 2018.01.10 CentOS에 go lang을 설치하자
  5. 2018.01.10 파일 권한 Access Denied
  6. 2018.01.10 FD limit 값 수정하기
  7. 2018.01.10 ec2 root 계정 활성화
  8. 2018.01.07 본문 내용들
  9. 2016.08.31 SQL_JOIN
  10. 2016.01.27 crontab

window에서 nGrinder 설치 및 실행

Posted 2018. 1. 14. 21:34

윈도우에서 nGrinder 를 사용해보자

 

java 기반이라 java를 설치해야 한다.

꼭 어떤버전을 사용해야 한다는 내용은 찾아보기 귀찮고

집에 1.8버전이 설치되어 있기 때문에 그냥 진행을 하였다.

울집은 1.8.0_144 버전이 설치되어 있다.

 

java가 설치안되어 있으면 설치 및 환경변수 셋팅까지 하고 난 다음 진행 한다.

https://github.com/naver/ngrinder/releases

ngrinder-controller-3.4.1.war를 다운로드 받는다.

 

빨간 네모칸을 눌러서 다운로드 받으면 된다.

 

난 C:에 ngin 이란 폴더를 만들어서 그 안에 넣어 놨다.

 

 

cmd 창을 열어서 해당 파일이 있는 경로에서

java -XX:MaxPermSize=200m -jar ngrinder-controller-3.4.1.war

를 입력해 주면 서버가 실행이 된다. 맨 마지막에 server:main started 가 뜨면 완료

이상하게뜬다. error가 주루룩 올라간다 하면 error 뭔지 찾아 봐야 함.

 

port 사용 중복 오류날 경우는 war -p 1212 식으로 war 다음에 -p 안쓰는 포트번호

를 입력해주면 된다.

 

 

 

실행 완료 후 브라우저 열어서 http://127.0.0.1:8080  ( default 가 8080이다. )

실행한 포트넣고 들어가면 페이지가 뜬다

초기 아이디 비번은 admin  /  admin 이다.

 

 

로그인 후 오른쪽 상단에 

admin 메뉴를 클릭하면 Download Agent 메뉴가 보일것이다.

agent를 다운받고 압출을 풀어준다.

 

 

그러면 실행 파일이 여러개 보일텐데

윈도우에서는 run_agent.bat을 실행하면 된다.

.sh는 리눅스에서 실행하면 된다. 

 

단 기존에 컨트롤러 실행시킨거 끄면 안됨 ;;

cmd 하나 더 열어서 실행시켜야 하고 최종적으로는 두개 다 실행 시켜두어야 한다 !

 

controller 실행과 똑같이 cmd에서 압출 푼 폴더로 가서 run_agent.bat 입력하면

agent가 실행 된다.

 

Waiting for agent controller sever signal... 뜨면 제대로 된것이다.

 

 

controller, agent를 둘 다 실행 시켰다면

테스트 스크립트를 만들러 간다.

상단메뉴 Script 선택 후 Create a script를 누른다.

 

그러면 아래와 같이 모달창이 나타난다.

Groovy 에는 스크립트 파일명을 적어주면 되고

URL type을 선택 후 테스트 할 서버 주소명을 적어 준다.

Create를 눌러 저장한 다음

 

해당 스크립트를 사용해서 퍼포먼스 테스트를 진행 해보자.

상단메뉴 퍼포먼스 테스트로 가서 create test를 선택한다.

 

 

 

관련 내용을 쓰기엔 시간이 좀 필요한데 지금 바뻐서 요기까지만 남긴다.

 

 

JAVA Redis Pool

Posted 2018. 1. 11. 23:49

싱글톤

 

package redis;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class RedisClient {
 JedisPool jedisPool;
 JedisPoolConfig poolConfig;
 
 private static RedisClient redisClient = null;
 private RedisClient() {
  poolConfig = new JedisPoolConfig();
  poolConfig.setMinIdle(5);  
  poolConfig.setMaxActive(1000); 
  poolConfig.setMaxWait(5000); // long
  jedisPool = new JedisPool(poolConfig, "127.0.0.1", 50001);
 }
 
 public static RedisClient getInstance() {
  if(redisClient == null) {
   redisClient = new RedisClient();
  }
  
  return redisClient;
 }
 
 public void returnResource(Jedis client) {
  jedisPool.returnResource(client);
 }
 
 public void testRedis() {
//  Jedis jedis = null;
//  try {
//   jedis = jedisPool.getResource();
//   String str = jedis.get("key1");
//   System.out.println(str);
//  } catch(Exception e) {
//   e.printStackTrace();
//  } finally {
//   if(jedis != null) {
//    returnResource(jedis);
//   } 
//  }
 }
}

 

사용 할 곳에서

RedisClient redisClient = RedisClient.getInstance();

로 받아와서

redisClient.testRedis() 호출 해서 쓰면 된다.

예전 버전이라 jedis-2.1.0 jar 파일을 사용해야 한다.

 

요즘버전은 바뀌어서 config쪽에 몇몇 함수가 사라졌다.

returnResource도 없어져서 요즘버전을 사용하면 pool에서 받은놈을 close 해주면 된다.

Jedis jedis = pool.getResource();

jedis... 사용 후

jedis.close() 하면됨.

나는 옛날버전이라 쓰고나서 returnResource로 리턴시켜 준거고.

git ignore 설정

Posted 2018. 1. 10. 17:59

필요없는 파일이 자꾸 올라간다.

짜증나니깐 ignore 설정을 하자



처음 커밋하는 경우엔


.git 폴더가 있는 위치에 .gitignore 파일을 만들고

제외시킬 목록을 넣어 준다

src/abc/.idea

src/github.com

*.exe

뭐 이런 커밋할 필요없는 애들목록을 쭉 써준다.

그리고 파일 몽땅 잡고 커밋.


하면 ignore 목록에 있는것들 제외되고 커밋이 된다.


하지만 어쩌다가 그냥 올렸을 경우..제외시켜야 한다.


먼저 제외시킬 파일을 다른 폴더에 백업 해 두고 삭제시킨다

그리고 삭제 시킨 내용과 ignore 파일을 커밋 한다.

꼭 같이 할 필요는 없고 어쩃든 제외시킬 파일 커밋하기 전에 ignore 파일은 먼저 올라가 있어야 한다.


그리고 백업해둔 파일을 가져오고

다시 몽땅잡고 커밋 한다.


그리고 커밋 내용을 보면 ignore 목록에 있던 파일은 제외가 된것을 확인 할 수 있다.

복습겸 기록 남기기 용도라 다른 블로그처럼 스크린샷은 없음.

아, 다른 블로그보면 삭제 하지 않고?

git rm -r --cached .     하고 git add . 하고 git commit - m"fixed untracked files" 해서

제외 시키고 있던데..

난 그건 모르겠다. 그거 하다 안되서 위에서 처럼 삭제하고 커밋하고 가져와서 다시 하고 했다.


간단한 내용이고, 백업과 다시 가져오기가 귀찮으면 직접 명령어 넣어서 하면 좋겠지.

'Git' 카테고리의 다른 글

push 충동, 커밋시점 되돌리기  (0) 2021.03.23

CentOS에 go lang을 설치하자

Posted 2018. 1. 10. 17:46

맨 처음 접속한 상태라고 치자.

yum update 한번 해주고

wget으로 할꺼니깐 yum install wget 을 해준다.


https://golang.org/dl/ 싸이트로 가서 어떤 버전으로 받을지 미리 봐두자.

여기선 1.10beta로 설치 한다


cd

wget https://storage.googleapis.com/golang/원하는 파일 이름 입력

ex) wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz

확장자까지 쭈욱~ 써준다

다운 받고 나면

sudo tar -zxcf 다운받은파일이름 -C /usr/local

=> 다운받은 파일을 /usr/local폴더에 압축을 푼다


GOROOT 설정을 하자

export GOROOT=/usr/local/go

=> 다운로드 푼 폴더의 위치 이다


GOPATH 설정을 하자

export GOPATH=$PATH:/usr/local/go/bin

=> 역시나 다운로드 푼 폴더의 위치고 bin 까지 잡아준다. 저 안에 go 실행 파일이 있다.


여기까지했으면 잘됐는지 보자

go version 입력 후 버전이 잘 나오는지

go env 입력 후 config 값들이 잘 나오는지


간단한 프로그램으로 테스트 해봐도 된다

mkdir -p src/hello  src폴더에 hello 폴더를 만들고

cd src/hello

vi hello.go  hello.go 파일을 연다.


package main

import "fmt"

func main() {

  fmt.Printf("hello\n")

}

:wq! 저장 후 나와서 

go run hello.go 를 실행하면 hello가 출력 된다.


출력이 안되면 오타가 낫던지 경로가 안맞던지 할꺼다.

파일 권한 Access Denied

Posted 2018. 1. 10. 17:36

linux는 뭐 chmod xxx name 줘서 처리하면 되지만 그 내용을 쓰러온건 아니고

Window에서 Access Denied 뜰때마다 졸라 짜증난다.


폴더에서 권한백날 줘봐야 먹히지도 않고

cmd로 간다

icacls "Directory:filefolder" /GRANT UserName:F  로 처리 하면 잘 됨.


ex)

icacls "D:\abcdFile" /GRANT Users:F

D:의 abcdFile 이라는 파일의 액세스를 :F 옵션으로 준다는 뜻.

Users는 사용자 이름이다. 

기본적으로 윈도우 사용자가 Administrator, Users , ...기타등등 있을것이다.


저렇게 안하고 관리자 권한 실행도 해보고 별짓 다 해봐도 Access Denied가 자꾸 발생한다.

걍 직접 입력하는게 직빵이였음.


'리눅스' 카테고리의 다른 글

centos php error_log tail 옵션  (0) 2018.03.23
FD limit 값 수정하기  (0) 2018.01.10
ec2 root 계정 활성화  (0) 2018.01.10

FD limit 값 수정하기

Posted 2018. 1. 10. 14:29

파일관련 프로그램을 돌릴때 MAX OPEN 값으로 인해 오류가 발생했다.


read limit값을 바꿔주자.


cat /proc/sys/fs/file-max 를 입력 해 보면

나오는 숫자가 1개의 로그인 세션에서 해당 숫자만큼 파일을 열수 있다는 의미이다.


시스템을 통해 열리는 file descriptior의 개수는 linux os의 /etc/sysctl.conf 파일로 변경가능하다.

또는 그냥 

sysctl -w fs.file-max=655360

sysctl -p

sysctl fs.file-max

로 직접 변경한다.

'리눅스' 카테고리의 다른 글

centos php error_log tail 옵션  (0) 2018.03.23
파일 권한 Access Denied  (0) 2018.01.10
ec2 root 계정 활성화  (0) 2018.01.10

ec2 root 계정 활성화

Posted 2018. 1. 10. 11:43

처음 설치후 centos일 경우 login id가 centos 이고 비번은 걍 엔터치고 들어간다.

로그인 후에 root 계정을 활성화해줘야 하는데

/etc/ssh/sshd_config 파일 수정이 필요 하다.


$> vi /etc/ssh/sshd_config

열어서 #PermitRootLogin yes 주석을 제거해 주고 저장하고 나온다


로그인시 사용했던 ssh 인증을 root도 사용할수있도록 복사 한다

sudo cp .ssh/authorized_keys /root/.ssh/


service sshd restart 재시작 해주소


root로 접속하면 됨




'리눅스' 카테고리의 다른 글

centos php error_log tail 옵션  (0) 2018.03.23
파일 권한 Access Denied  (0) 2018.01.10
FD limit 값 수정하기  (0) 2018.01.10

본문 내용들

Posted 2018. 1. 7. 16:37

실제 책 내부에 본문을 보면 많은 생각을 하게 되는 내용들이 많이 있다.

본문을 봐야 이해가 되지만 난 보고난 뒤 생각을 달리 하게 된 계기가 되는

주제들만 뽑아 둔다.

 

 

SQL_JOIN

Posted 2016. 8. 31. 15:27

출:http://rapapa.net/?p=311

'DB' 카테고리의 다른 글

종류  (0) 2015.04.04
트랜잭션  (0) 2012.08.13
RTRIM  (0) 2012.08.13
저장 프로시저  (0) 2012.08.13
SQL 쿼리문  (0) 2012.08.13

crontab

Posted 2016. 1. 27. 17:50

crontab 

 

  - 시스템의 주기적인  cron 작업의 설정, 수정등을 하는 명령어
  - 시스템에서 가장 중요한 데몬중의 하나인 crond 와 직접적인 관련이 있는 명령어
  - crond 데몬은  /etc/rc.d/init.d/crond 의 스크립트에 의해 시작, 종료, 재시작될수 있음

  - crond 데몬
     - /etc/crontab 파일
     - /etc/rc.d/init.d/crond 스크립트
     - /var/spool/cron 디렉토리내의 크론설정파일들

 

 

명령어 위치 : /usr/bin/crontab
사용형식     : crontab [ -u 사용자id ] 파일
                   crontab [ -u 사용자id ] { -l | -r | -e }

 

cat /etc/crontab
매시 1회 자동실행하기 위한 시스템 크론 설정

01 * * * * root run-parts /etc/cron.hourly
  - 매일 매시 01분마다 /etc/cron.hourly 디렉토리내에 존재하는 파일들을 실행


매일 1회 자동실행하기 위한 시스템 크론설정

02 4 * * * root run-parts /etc/cron.daily
 - 매일 새벽 4시 02분마다 /etc/cron.daily  디렉토리내에 존재하는 파일들을 실행

 

매주 1회 자동실행하기 위한 시스템 크론설정

22 4 * * 0 root run-parts /etc/cron.weekly
 - 매주 일요일 새벽 4시 22분마다 /etc/cron.weekly 디렉토리내에 존재하는 파일들을 실행

 

매월 1회 자동실행하기 위한 시스템 크론설정

42 4 1 * * root run-parts /etc/cron.monthly
 ->매월 1일 새벽 4시 42분마다 /etc/cron.monthly 디렉토리내에 존재하는 파일들을 실행


* root 이외의 사용자에게 crontab 명령어를 이용할 수 있게 하는 방법

  - /etc/cron.allow 파일에 사용자의 id를 등록


* 일반사용자의 crontab 명령어사용을 제안하고자 한다면
  - /etc/cron.deny 파일에 사용자의 id 를 등록


 

* cron 설정하는 방법

 40 3 * * * root /home/mysql/mysql_backup.sh

 

 맨 앞의 40은 40분을 의미함 (분을 의미:0~59)

 그 뒤의 3은 03시를 의미함 (시를 의미:0~23)

 그 뒤의 * 은 매일을 의미함 (일을 의미:1~31)

 그 뒤의 * 은 매월을 의미함 (월을 의미:1~12)

 그 뒤의 * 은 매주를 의미함(요일을 의미 1:월요일~7:일용일)

 그 뒤의 root /home/mysql/mysql_backup.sh 는 root  계정으로 mysql_backup.sh을 실행하라는

 의미

 

 * 문자 : 각 필드에 해당하는 모든 숫자를 의미

 - 문자 : 각 필드자리에 하이픈 문자가 올수 있음

   ex) 일 필드자리에 11-15 (11,12,13,14,15일을 의미)

 ,문자 : 각 필드자리에 콤마문자가 올수 있음

   ex) 일 필드자리에 1,11,21 (1일,11일 21일을 의미)

 

« PREV : 1 : 2 : 3 : 4 : 5 : ··· : 24 : NEXT »