본문 바로가기

php66

Memcache 데몬을 사용하여 메모리에 데이터 저장(cache)하기 XCache와 XDebug, Memcache 데몬을 연구하고 있습니다. Memcache 데몬(memcached)은 고성능 분산 객체 캐시입니다. 애플리케이션과 데이터 스토어 중간에 설치되는 memcached는 RAM에 객체들을 저장합니다. 각각의 캐시 히트는 데이터베이스 서버의 라운드트립(roundtrip)을 대체하면서 애플리케이션의 속도를 높여줍니다. XCache를 사용하면 같은 PHP 코드를 페이지에 나타내기 위해 재 컴파일 해야 하는 불필요하고 값비싼 노력을 들이지 않아도 된다. XCache는 프리 오픈 소스 소프트웨어이며 설치도 오래 걸리지 않는다. XDebug는 소프트웨어 엑스레이와 비슷하다. 애플리케이션을 들여다 보고, 내부 작동을 노출하며 코드가 사이클을 어떻게 소비하는지를 가려낸다. XDe.. 2009. 7. 3.
PHP 애플리케이션을 프로파일링 하여 느려진 코드를 진단 및 빠르게 하기 PHP 애플리케이션이 느려진다면 프로파일러를 사용하여 어디에서 시간이 소비되는지를 파악합니다. 문, 루프, 함수, 클래스, 라이브러리 중 가장 느린 움직임을 보이는 것을 찾을 수 있습니다. 시간 보다는 메모리 사용이 문제가 될 경우에는 좋은 프로파일러가 컴포넌트 풋프린트도 발견해 낼 수 있습니다. XCache (캐싱 패키지들 중 하나)는 컴파일 프로세스의 결과를 보존하여 과잉 작업을 줄인다. 페이지가 바뀌지 않는 한, 캐싱 된 페이지는 프록시로서 충분한 역할을 한다. 페이지가 수정되면 캐싱 된 버전은 무효가 되고 다른 것으로 대체된다. opcode 캐시와 opcode 옵티마이저는 사이트의 반응성을 높일 수 있는 저렴한 기술이라고 할 수 있다. 많은 캐시 패키지들이 프리 및 오픈 소스이기 때문에 코드를 수.. 2009. 7. 3.
opcode 캐시 소프트웨어로 성능과 처리량 높이기 PHP는 스크립팅 언어로써 웹 애플리케이션을 구현하는데 종종 사용되고 있습니다. 배우기 쉽고 시각적인 결과를 빠르게 만들어 냅니다. 하지만, PHP는 인터프리팅 되기 때문에 PHP 코드는 실행될 때마다 opcode로 파싱 및 변환됩니다. opcode 캐시는 재작업을 줄이면서, PHP 애플리케이션을 더욱 빠르게 만들어줍니다. 짧은 시간 동안 PHP는 웹 애플리케이션을 위한 대중적인 프로그래밍 언어가 되었다. 초보자도 PHP를 쉽게 설치할 수 있고 배우기도 쉽다. 보다 숙련된 개발자에게는, (V5부터) 강력한 객체 지향 기능을 제공한다. PHP 개발자 커뮤니티는 방대하고, 상당히 많은 오픈 소스와 상용 라이브러리와 툴들이 언어 기능을 확장하고 있다. PHP는 시각적인 결과를 빠르게 나타내기 때문에 많은 사람.. 2009. 7. 3.
PHP5의 MySQLi 확장 활용 예제 PHP5의 놀라운 기능들 중에서 특히 주목해야 할 부분을 꼽으라고 하신다면 저는 주저 없이 MySQLi (MySQL Improved Extension) 을 꼽겠습니다. (물론 simpleXML 확장도 굉장합니다만... ^^;) 기존 함수들인 mysql_* 형태를 거의 그대로 사용하실 수 있도록 mysqli_* 함수들이 준비되어 있고, PHP5의 클래스 모델을 통해서 사용하실 수 있도록 mysqli::* 형태로도 메소드들을 제공하고 있습니다. MySQLi 확장은 새로워진 PHP5에 대응하기 위한 MySQL 의 새로운 도전을 담고 있습니다. 물론 업그레이드된 MySQL 5 의 성능을 최대한으로 활용하기 위해서도 드라이버 재작성은 꼭 필요했을 겁니다. 기존의 mysql_* 함수들보다 작게는 2배에서 최고 40.. 2009. 7. 3.
PHP SSH2 사용한 원격 서버 접속 PHP 에서 원격지의 서버에 접속해서 데이터를 교환하거나 , 특정 프로그램을 실행시키기 위해 사용할 수 있다. 준비물 : OpenSSL(lib), libssh2, php_ssh2 리눅스 시스템 1. OpenSSL http://www.openssl.org/ 2. libssh2 http://sourceforge.net/projects/libssh2/ 3. ssh2 PHP extension http://pecl.php.net/package/ssh2 OpenSSL 설치 우선 소스를 적당한 디렉토리 (예제에서는 /usr/local/src 를 사용함) 에 다운로드 받는다. # tar zxvf openssl-0.9.8k.tar.gz # cd openssl-0.9.8k # ./config 또는 ./Configure -.. 2009. 6. 17.