StoryCode

'전체 글'에 해당되는 글 570건

  1. ZOOM.사전 등록.출석
  2. Application.PyQT5.Anaconda.PyCharm
  3. ab (apache bench) 테스트

ZOOM.사전 등록.출석

사무, 유용한 툴
반응형

참조) https://www.clien.net/service/board/lecture/14788185

 

<설정방법>

1. 회의실 예약 시 "등록"을 "필수항목"으로 체크, 저장

2. 해당 회의실 편집 페이지에 다시 들어가면,  하단에 등록/이메일설정/브랜딩이 생성되어 있습니다.

3. "등록" 클릭

4. "등록옵션"의 "편집" 클릭하여 "등록"탭에서 "수동승인"으로 설정 변경

- 문항을 추가하지 않으면, 기본적으로 이름과 이메일을 수집합니다.

- "사용자 지정 질문" 탭에서 사전등록 시 받을 설문을 미리 등록할 수 있습니다.



<사용방법>

1. 회의실 URL은 사전등록 URL로 변경되어 회의장 입장이 안됩니다.

    회의실 URL을 메일 또는 문자로 보내 실명으로 사전등록하도록 안내합니다.

2. 학생이 사전등록을 마친 상태에서

    담당자가 "등록"의 "참석자 관리"의 "편집"을 눌러 "승인" 처리를 하면,

    교육생에게 자동으로 회의실 URL이 갑니다.

3. 교육 때 해당 URL로 회의실에 입장하면, 사전등록한 실명으로만 입장 가능합니다.

    물론 들어와서 변경할 수 있겠지만 입장 시 실명으로만 입장됩니다.

* 해당 URL은 사전 등록자에게 종속되어, URL을 뿌려서 여러명이 접속하더라도

  사전등록자의 이름으로만 접속 가능합니다.

  즉, 동명이인이 접속하면 일단 대기실로 내보낸다음 어떻게 된 일인지 확인을 하시면 되겠죠.

 

 

* 몇 명 안되면 호스트에서 이름을 편집해주는게 편할수도 있을거에요..

반응형

Application.PyQT5.Anaconda.PyCharm

Python, 파이썬
반응형

1) Python 3.X, PyQT 4 설치

http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4

 

1) Anaconda 설치

https://www.anaconda.com/distribution/

All User 로 설치 경로 = C:\Anaconda3

 

Qt Designer 인 C:\Anaconda3\Library\bin\designer.exe 바로 가기를 바탕화면에 배치

 

2) PyCharm Community

https://www.jetbrains.com/pycharm/download/

 

설치후 Configure - Settings 혹은 File - Settings- Project Interpreter - 오른쪽 톱니바퀴 Add - 왼쪽 System Interpreter 메뉴 - C:\Anaconda\python.exe 선택

 

OK 후 잠시 기다린 뒤, pyqt 확인

 

반응형

'Python, 파이썬' 카테고리의 다른 글

Python.설치파일만들기  (0) 2020.04.06
(작성중) Python.QT5.mathplotlib.막대그래프  (0) 2020.04.02
아래한글 ( HWP ) 텍스트 처리  (0) 2020.02.17
DJango Debug Toolbar  (0) 2020.02.17
디렉토리검색  (0) 2020.02.13

ab (apache bench) 테스트

IT 용어, 인터넷 활용 등등
반응형

1) 설치

  1.1) Xampp 설치 ( https://www.apachefriends.org/download.html )

  1.2) CMD

  1.3) cd C:\xampp\apache\bin

  1.4) ab -n 1000 -c 20 -g gnuplot.dat -k -H "Accept-Encoding: gzip, default" http://example.com

 

2) -g 옵션 gnuplot 설명

 

참고 : https://stackoverflow.com/questions/5929104/apache-bench-gnuplot-output-what-are-the-column-definitions

-g 옵션 ( gnuplot ) 항목 설명

 

 

 

 

3) 초당 처리단위 계산을 위한 테스트 방법의 구상

  3.1) 최악의 경우 서비스 가능한 양을 측정하는 것이 좋다. 그러기 위해서는 가장 많이 서비스 되면서 가장 무거운 기능을 타겟으로 삼는 것이 좋다. 단순히 홈페이지 접속만으로 테스트할 경우 실제 상황에서는 대처가 안된다.

 

  3.2) "타겟한 기능" 이 단일 프로세스에서 몇 ms 가 걸리는 가를 추정 측정

ab -n 100 -c 1 으로 wait 평균. 많이 튈 경우 상하위 20% 씩 제거하고 나머지 60% 평균을 단일코어 1회 프로세스 타임으로 규정

 

  3.3) 3.2 와는 동일하나 zip 모드에서 얼마나 걸리는가 추정 측정. zip 으로 인한 부하가 커서 오히려 느려질 수 있으니 3.1 과 3.2 의 평균중 에서 낮은 방식으로 이후 테스트 진행

ab -n 100 -c 1 -H "Accept-Encoding: gzip, defalt" 으로 wait 평균.

 

  3.4) 이후 " 1초 / 단일코어 1회 프로세스 타임 " 으로 나눈 수 X Core 수 = CPU 능력치 를 C 에 대입한다.

ab -n 10000 -c CPU 능력치 -H "할지말지 선택" 으로 우선 테스트를 진행한다.

결과는 gnuplot.CPU능력치.result 로 저장.

 

  3.5) 하이퍼 쓰레드가 반영이 되는 경우도 있으므로,

ab -n 10000 -c CPU 능력치 X 2 -H "할지말지 선택" 으로 우선 테스트를 진행해본다.

결과는 gnuplot.CPU능력치X2.result 로 저장.

 

----------------------------------------------------------------------------------------

 

4) 초당 처리단위 계산을 위한 테스트 방법의 구상

- 테스트는 보수적으로 테스트해야 한다.

 

  4.1) 최악의 경우 서비스 가능한 양을 측정하는 것이 좋다. 그러기 위해서는 가장 많이 서비스 되면서 가장 무거운 기능을 타겟으로 삼는 것이 좋다. 단순히 홈페이지 접속만으로 테스트할 경우, index.html 같은 static file 만 테스트가 되므로 실제 상황에서는 대처가 안된다.

 

  4.2) "타겟한 기능" 이 단일 프로세스에서 CPU 부하가 몇 % 인지 측정하기 위해,

ab -n 100 -c 1 으로 부하를 준다음, 서버에서 sar 로 cpu 부하를 측정한다.

  참고 : 3.2 에서는, 가능하다면 1개의 Core 만으로 테스트 가능하면 좋다.

 

          이유는 하나의 트랜잭션이 0.03 초 같은 식으로 매우 짧을 경우인데,

          CPU 가 여러개일 경우 각각 다른 CPU 에서 트랜잭션이 수행되면 CPU 부하를 측정하기 힘들기 때문이다.

 

  4.3) 서버로 두개의 터미널을 띄운뒤,

한대에는 vmstat -t 1을 실행 ( 1 Core 일 경우 의미가 있음 )

한대에는 top 후 1 을 눌러서 Core 별  CPU 보이도록한다. ( MP 일 경우 의미가 있음 )

 

중요한 점은 ab 가 -c 1 이므로 1개의 Core 에만 몇 % 부하가 가는 지="단일프로세스Load측정치"를 확인한다.

 

만약, 서버 CPU 를 측정할 수 없다면, ab -g 옵션에서 wait 초="단일프로세스Load측정치"를 측정한다.

CPU 나 wait 가 많이 튈 경우 상하위 20% 씩 제거하고 나머지 60% 평균을 단일코어 1회 프로세스 타임으로 규정

 

  4.4) 3.2 와는 동일하나 zip 모드에서 얼마나 걸리는가 추정 측정. zip 으로 인한 부하가 커서 오히려 느려질 수 있으니 3.1 과 3.2 의 평균중 에서 낮은 방식으로 이후 테스트 진행

ab -n 100 -c 1 -H "Accept-Encoding: gzip, defalt" 으로도, CPU 혹은 wait "단일프로세스Load측정치" 를 측정해 본다.

 

  4.5) 이후 100% / CPU "단일프로세스Load측정치" 나 1초 / wait단일프로세스Load측정치 으로 나눈 수 X Core 수 = CPU 능력치 를 ab -c 에 대입한다.

ab -n 10000 -c CPU 능력치 -H "할지말지 선택" 으로 우선 테스트를 진행한다.

결과는 gnuplot.CPU능력치.result 로 저장.

  이 경우 top 이나 vmstat 를 확인하여 CPU 가 Full Load 인지 확인한다.

 

  4.6) 하이퍼 쓰레드가 반영이 되는 경우도 있으므로,

ab -n 10000 -c CPU 능력치 X 2 -H "할지말지 선택" 으로 우선 테스트를 진행해본다.

결과는 gnuplot.CPU능력치X2.result 로 저장.

  이 경우 top 이나 vmstat 를 확인하여 CPU 가 Full Load 인지 확인한다.

 

------------------------------------------------------------------------

 

  5) 상대방을 납득 시킬 수 있어야 한다.

만약 100tps 가 필요하다고 하면, 1초내에 100tps가 처리되야 한다는 뜻이다.

 

근데 1초 100tps 도 의미가 다양하다.

예를 들어 0초에 100개의 Request 가 동시에 발생할 수도 있고, 

0.0초에 10개의 Request, 0.1 초에 10개의 Request, 0.2 초에 10개의 Request...0.9초에 10개의 Request 가 발생할 수도 있다.

즉, Concurrent 최대 100 까지 했을 경우 처리가 잘되는 지 확인하는 것이다.

어쨌건 Concurrent 10부터 100 까지 적당한 간격으로 테스트하면서 처리시간과 Core 별 로드를 체크해보는 것이 중요하다.

 

이때 후자는 1초내에 처리가 될 수도 있지만, 전자는 안될 수도 있다.

 

 

 

 

 

 

 

추가 사용법 --------------------------------------------------------------------------------------------------------

- ab 에서 -v 4 옵션을 주면 모든 Request 의 Response 결과가 출력된다.

- gnuplot 차트실행 : script 를 먼저 만들고, gnuplot> load "script" 하던지, cmd > gnuplot "script" 한다.

 

추가 ------------------------------

windows 용 ab 는 2020년 5월 현재 2.4 가 최신이다.

2.3으로 하니 URL 이 길어서인지 안되는 게 좀 있어서 2.4 를 사용하는 것이 좋다.

 

https://www.apachelounge.com/download/

 

에서 "Apache 2.4.43 Win64" 을 받으면 ab 가 있으니 사용하면 된다.

 

 

반응형

'IT 용어, 인터넷 활용 등등' 카테고리의 다른 글

Software.Architect.AA, TA, DA, QA, BA  (0) 2020.08.21
CI, DI  (0) 2020.04.20
Javascript.Hoisting  (0) 2020.02.08
whois.com 에서 whois.co.kr 로 이전하기  (0) 2019.07.01
Serverless Architecture  (0) 2018.12.06