리자

mod_bandwidth(트래픽 제한, 접속자당 제한)

· 20년 전 · 3019
트래픽 제한(접속당) 모듈 (mod_bandwidth) 설치 및 운영
mod_bandwidth

아파치에 접속하는 사용자들의 대역폭을 제한한다. mod_throttle 와 비슷하지만, 용도가 다르다.
이놈들은 아파치 정식 모듈이 아니니.. DSO모드로 올렸다가. 이상하면 내린다.^^;

1. 개념
한 접속당 일정양(Byte/Sec)을 정해 놓고, 그 양이 넘으면 delay 시켜 일정한 트래픽을 유지한다.

2. 설치
(1) 먼저 모듈을 구한다. 어디서 ?? 개발자 사이트에서
http://www.cohprog.com/v3/bandwidth/intro-en.html

wget ftp://ftp.cohprog.com/pub/apache/module/1.3.0/mod_bandwidth.c
(2) 컴파일 및 설치 (apxs 를 사용하여 한방에 끝낸다.)
/usr/local/apache/bin/apxs -i -a -c mod_bandwidth.c
## 옵션 설명.
-i : 라이브러리 디렉토리에 so 파일 복사하라는 옵션
-a : httpd.conf 파일에 LoadModule 설정을 하라는 옵션
-c : 컴파일 하라는 옵션

3. 설정
(1) httpd.conf 파일을 열어서 다음과 같이 설정한다.

## 1인 트래픽 제한 모듈 로딩.
LoadModule bandwidth_module libexec/mod_bandwidth.so

아파치가 실행할때의 사용자권한(nobody 또는 apache )으로 읽기,쓰기,실행권한이 있는 디렉토리가 있어야 한다.
기본적으로 /tmp/apachebw , /tmp/apachebw/link , /tmp/apachebw/master 이렇게 생성한다.
변경하려면 BandWidthDataDir 지시자를 이용한다.
(위 디렉토리에 문제가 있으면 error로그 파일에 남기고 ,기능은 비활성화 된다.)


지시자:
* BandWidth 에서 사용할 임시 디렉토리 지정 (기본:/tmp/apachebw)
BandWidthDataDir 디렉토리:
Context : server

* BandWidthModule 사용 여부 (기본 Off)
BandWidthModule On 또는 Off
Context : server,
가상호스트 안에 사용할경우 가상호스트 마다 BandWidthModule On 설정을 하여야 하며,
지시자 안에 넣을때는 따로 넣어주지 않아도 된다.

* BandWidth 에서 지연할 시간 설정 (microsecond 단위)
BandWidthPulse
Context : server
예전에는 지연시간이 1초로 고정되어 있었다. 이 말은 512Bit/sec 라면. 1KBit 를 보내려면,
1KBit을 보낸후에 2초 기다린후 512Bit 을 보냈다. 그렇지만, "BandWidthPluse 1000000" (1초)를 설정하면,
512Bit을 보내고 1초 기다린후 512Bit을 보낸다.
이 값을 설정하면, 보다 부드럽게 제한하면서 보낼수 있다. 설정값을 (1/5 초) 이상 사용하길 권장한다.
장점 : 부드럽게 트래픽을 제한할 수 있다.
단점 : 패킷의 양이 많아지며, 값이 적을수록 서버에 부하를 많이 준다.

* BandWidth 를 통한 대역폭 제한
BandWidth
Context : Directory
domain,ip등은 접속하는 사용자의 ip및 도메인이다. ip 는 넷마스크를 적용할 수 있다.
rate : 바이트 단위 초당 대역폭, 0은 제한을 두지 않음.

* 큰 파일만 대역폭 제한
LargeFileLimit
Context : Directory
filesize : filesize 는 파일크기(KByte)이 파일 크기 이상에멘 rate 적용
rate : 바이트 단위 초당 대역폭(Byte/Sec), 0은 무제한

* 최대 연결수 제한 (기본 0 제한없음)
MaxConnection
Context : Directory
동시연결수가 connections 이상이면 연결을 거부한다.
(가상 호스트별 최대 동시 연결수 제한에 좋을것 같음^^;)

* 최소 대역폭 설정 (기본 255Byte/Sec , 0을 설정해도 255 이다., -1을 넣으면 최소대역폭은 0이 된다.)
MinBandWidth
(BandWidth, LargeFileLimit 보다 우선한다.)


예)) 가상호스트 속에 들어간다.
BandWidthModule On
## 50M 넘는 파일은 100KByte/Sec 으로 제한 한다.
LargeFileLimit 51200 102400
## 동시에 5개의 접속을 허용한다.
MaxConnection 5

(( 주의 ))
mkdir -p /tmp/apachebw/master/
mkdir -p /tmp/apachebw/link
chown -R nobody:nobody /tmp/apachebw

이렇게 디렉토리를 만들어주지 않으면 작동하지 않는다.. error_log 에 로그만 뿌린다.^^<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:30:25 Apache에서 이동 됨]</div>
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
19년 전 조회 2,766
19년 전 조회 3,507
19년 전 조회 2,476
19년 전 조회 4,171
19년 전 조회 3,354
19년 전 조회 4,181
19년 전 조회 3,534
19년 전 조회 3,186
19년 전 조회 3,458
19년 전 조회 2,503
19년 전 조회 2,903
19년 전 조회 2,408
19년 전 조회 3,779
19년 전 조회 4,814
19년 전 조회 3,828
19년 전 조회 1,803
19년 전 조회 2,800
19년 전 조회 2,468
19년 전 조회 2,688
19년 전 조회 4,482
19년 전 조회 2,643
19년 전 조회 3,104
19년 전 조회 3,067
19년 전 조회 3,729
19년 전 조회 3,682
19년 전 조회 1,915
19년 전 조회 2,276
19년 전 조회 2,853
19년 전 조회 2,519
19년 전 조회 4,374
19년 전 조회 3,379
19년 전 조회 4,139
19년 전 조회 2,669
19년 전 조회 2,551
19년 전 조회 3,017
19년 전 조회 2,550
19년 전 조회 2,844
19년 전 조회 2,535
20년 전 조회 3,250
20년 전 조회 1,766
20년 전 조회 3,052
20년 전 조회 2,338
20년 전 조회 2,248
20년 전 조회 2,344
20년 전 조회 2,705
20년 전 조회 2,189
20년 전 조회 4,531
20년 전 조회 2,744
20년 전 조회 2,515
20년 전 조회 3,020
20년 전 조회 3,108
20년 전 조회 3,180
20년 전 조회 2,702
20년 전 조회 3,090
20년 전 조회 2,613
20년 전 조회 2,276
20년 전 조회 2,840
20년 전 조회 2,544
20년 전 조회 2,601
20년 전 조회 3,857
20년 전 조회 3,329
20년 전 조회 5,069
20년 전 조회 2,482
20년 전 조회 4,565
20년 전 조회 3,166
20년 전 조회 2,942
20년 전 조회 3,798
20년 전 조회 2,707
20년 전 조회 3,783
20년 전 조회 4,070
20년 전 조회 3,490
20년 전 조회 3,536
20년 전 조회 4,158
20년 전 조회 2,412
20년 전 조회 5,139
20년 전 조회 3,705
20년 전 조회 2,657
20년 전 조회 2,343
20년 전 조회 2,799
20년 전 조회 3,082
20년 전 조회 2,853
bbbking
20년 전 조회 5,829
20년 전 조회 2,756
bbbking
20년 전 조회 4,331
20년 전 조회 2,208
20년 전 조회 7,379
20년 전 조회 2,469
20년 전 조회 3,545
20년 전 조회 4,356
20년 전 조회 2,689
20년 전 조회 3,965
20년 전 조회 3,133
20년 전 조회 4,142
20년 전 조회 5,167
20년 전 조회 4,286
20년 전 조회 5,906
20년 전 조회 2,102
20년 전 조회 3,375
20년 전 조회 3,596
20년 전 조회 2,984