NFS의 locking 문제 NFS는 locking 에 대한 문제가 발생하곤 하는데, 이는 동일한 파일에 대해 서로 다른 서버가 write 요청을 할 때 발생한다. 동일한 파일로의 read 요청은 얼마든지 많아도 ( 물론 충분히 바쁜 서버들의 규모에서 ) 웹 서버쪽에서는 한번만 읽으면 되고, read 의 경우 어느 서버가 언제 가져가도 큰 문제가 되지 않지만 서비스를 동일한 파일에 서로 다른 서버가 쓰기위해 접근하도록 설계 했다면, NFS 안쓰는게 낫다. 다르게 말하면 동일한 파일을 쓰지 않게만 설계 하면 NFS 서버의 Net I/O 및 Disk I/O 가 허용하는 범위 내에서는 아주 좋은 동작 성능을 확보 할 수 있겠다.
expect 를 이용한 자동화 프로그래밍윤 상배dreamyun@yahoo.co.kr 차례 1절. expect 란 2절. expect 를 이용한 자동화 프로그래밍 2.1절. expect + tcl 또는 expect + perl 2.1.1절. perl expect 모듈 설치하기 2.1.2절. expect 를 이용한 ssh 자동로그인 프로그램3절. 결론1절. expect 란expect 는 다른 응용 어플리케이션과 상호대화(interactive)하는 프로그램을 만들기 위해 만들어진 프로그램이다. 나중에 expect 를 보면 알겠지만, 간단한 프로그래밍 언어 형식을 취하고 있음을 알수 잇다. expect 를 이용하면 다른 어플리케이션과 상호대화를 할수 있게 됨으로 자동화된 프로그램을 만들수가 있다. telnet 를 예로 들어보자면, expect 를 이용해서 telnet 와 상호작용하게 함으로 써, 자동로그인 하는 프로그램을 만들수도 있으며, 약간 응용해서 원격지의 서버를 자동으로 관리하는 프로그램을 만들수도 있다. 이러한 어플리케이션과의 상호대화는 어플리케이션의 표준출력 를 분석함으로써 이루어진다. 간단한 예로 telnet 을 써서 어떤 호스트에 연결하면 로그인 하기
Dec 24 11:03:01 48s crond[13447]: (*system*) RELOAD (/etc/crontab) 1. 퍼미션 확인 chmod 600 /etc/crontab 퍼미션 수정 후 crond을 재시작 해준다
exportfs 명령어는 nfs서버를 다시 시작하지 않고도 공유목록을 수정할 수 있다. -a : /etc/exports 파일을 읽어 들인다. -r : /etc/pxports 파일을 다시 읽어 들인다. -u IP:/디렉토리 : 입력한 디렉토리를 공유목록에서 제외한다. -v : 현재 공유 목록을 확인한다.
서론memcached는 고속의 분산형 Memory Cache이며, 주로 DB에의 참조 결과를 Cache, 웹시스템에 있어서의 성능향상을 위해 많이 사용된다. 웹시스템에 있어서의 부하대책서버의 구성을 살펴본다.Scale Out (서버의 수를 늘린다)Scale Up (CPU/Memory 등의 하드웨어를 향상시킨다)OS/Middleware의 설정을 살펴본다.네트워크구성을 살펴본다.어플리케이션 로직을 살펴본다.위의 대책 중에 DB서버에의 대책에는 데이터의 배치, 데이터 액세스방법을 어떻게 구현했는지가 문제가 된다.DB서버에의 부하를분산 (DB파티션팅 등의 기술을 사용해 Scale Out)DB서버에 있어서의 쓸때없는 처리를 줄인다. (DB Query를 다시 살펴본다)바로 memcache가 위의 문제가 될 수 있는 곳의 해결책이 될 수 있을 것 같다. memcached에 의한 성능향상파일 입출력 (File I/O)가 줄어듬파일의 내용을 캐쉬해 둠으로써 파일 입출력에 의한 부하가 줄어든다.세션정보의 공유유져의 세션정보를 캐쉬해 둠으로써, 복수의 아팟치서버사이의 세션정보를 공유한다.memcached의 캐쉬 방식분산형memcache서버 자체에는 분산장치을 가지고 있지않다.
XCache http://xcache.lighttpd.net/
root@root:/opt/install/jdom-1.1# ./build.sh JDOM Build System ------------------- Building with classpath /usr/local/java/lib/tools.jar:/usr/local/java/lib/dev.jar:./lib/ant.jar:./lib/xml-apis.jar:./lib/xerces.jar: Starting Ant... Buildfile: build.xml init: [echo] ----------- JDOM 1.1 ------------ prepare: prepare-src: [mkdir] Created dir: /opt/install/jdom-1.1/build/src [mkdir] Created dir: /opt/install/jdom-1.1/build/classes [copy] Copying 69 files to /opt/install/jdom-1.1/build/src compile: [javac] Compiling 62 source files to /opt/install/jdom-1.1/build/classes about: [javac] C
SSL/TLS Strong Encryption: FAQAvailable Languages: en The wise man doesn't give the right answers, he poses the right questions. -- Claude Levi-Strauss This chapter is a collection of frequently asked questions (FAQ) and corresponding answers following the popular USENET tradition. Most of these questions occurred on the Newsgroup comp.infosystems.www.servers.unix or the mod_ssl Support Mailing List modssl-users@modssl.org. They are collected at this place to avoid answering the same questions over and over. Please read this chapter at least once when installing mod_ssl or at least search for
kernel: ip_conntrack: table full, dropping packet ip_conntrack 모듈에서 연결 추적을 기록하는 테이블의 객수 제한때문에 생긴다.ip_conntrack table 가득차서 발생. # ip_conntrack table 확인방법cat /proc/net/ip_conntrack 해결하기================================================================== # 계산하기(32비트)CONTRACK_MAX = RAMSIZE(단위: byte) / 16384 / ( x / 32) HASHSIZE = CONNTRAK_MAX / 8 = RAMSIZE(단위: byte) / 131072 / (x / 32) CONTRACK_MAX = 2048M * 1024 * 1024 / 16384 * 32 = 131072 * 32 = 4194304HASHSIZE = CONNTRAK_MAX / 8 = 4194304 / 8 = 524288, # 계산하기(64비트)CONTRACK_MAX = RAMSIZE(단위: byte) / 16384 / ( x / 64) HASHSIZE = CONNTRAK_MAX / 8 =
빈줄 삭제:g/^$/d # 해당 문자열이 들어간 라인 삭제설명 : 이 문자열이 들어간 라인은 모두 삭제:% g/문자열/d # 특정 문자열만 들어간 라인 삭제설명 : 문자열 앞 뒤로 < 와 > 를 감싸주면 해당 단어만을 의미한다.:% g/<문자열>/d
# gd 소스 설치 tar xvfpz gd-2.0.33.tar.gzcd gd-2.0.33./configure --prefix=/opt/webapps/gd makemake install
# libmcrypt 소스 설치 tar xvfpz libmcrypt-2.5.7.tar.gzcd libmcrypt-2.5.7./configure --prefix=/opt/webapps/libmcrypt makemake install
프로세스별로 오픈된 파일 개수 확인하기 지정한 프로세스가 몇개의 파일을 사용중인지 확인하기 lsof -p PID | wc -l lsof -p 23425,24255 |wc -l
# openssl 소스 설치 tar xvfpz openssl-0.9.8g.tar.gzcd openssl-0.9.8g ./config -fPIC --prefix=/opt/webapps/openssl shared threads zlib makemake install echo "/opt/webapps/openssl/lib" >> /etc/ld.so.conf
# libiconv 소스 설치 tar xvfpz libiconv-1.9.2.tar.gzcd libiconv-1.9.2./configure --prefix=/usr makemake install