현재 위치: > 최신 기사 목록> 웹 사이트 응답 속도 및 성능을 향상시키기 위해 PHP 데이터 캐싱 사용 방법

웹 사이트 응답 속도 및 성능을 향상시키기 위해 PHP 데이터 캐싱 사용 방법

M66 2025-06-19

웹 사이트 응답 속도 및 성능을 향상시키기 위해 PHP 데이터 캐싱 사용 방법

오늘날의 인터넷 시대에 웹 사이트의 응답 속도는 사용자 경험에 중요합니다. PHP는 인기있는 개발 언어로서 데이터 캐싱 기술을 사용하여 웹 사이트의 성능을 크게 향상시킬 수 있습니다. 이 기사는 특정 기술 수단을 사용하여 데이터 캐싱을 통해 웹 사이트 응답 속도를 최적화하는 방법, 특히 Memcached 및 Redis 캐시 솔루션 사용 방법을 탐색합니다.

1. 데이터 캐싱의 개념을 이해하십시오

데이터 캐시는 자주 액세스하는 데이터를 메모리에 저장하여 요청할 때마다 데이터베이스에 대한 액세스를 줄이는 것입니다. 일반적인 캐시 유형에는 페이지 캐시, 데이터 캐시 및 쿼리 캐시가 포함됩니다. 페이지 캐시는 전체 웹 페이지 컨텐츠를 캐시합니다. 데이터 캐시는 쿼리 결과를 저장합니다. 쿼리 캐시 캐시 캐시는 특정 쿼리 문의 결과를 캐시합니다.

2. 데이터 캐시에 memcached를 사용하십시오

1. MemCached를 설치하고 구성하십시오

먼저 MemCached를 설치해야합니다. 다음 명령을 통해 Linux 시스템에 설치할 수 있습니다.

sudo apt-get 설치 memcached

설치 후 구성 파일`/etc/memcached.conf`를 편집하고 IP 주소, 포트 및 캐시 크기 및 기타 매개 변수를 조정하십시오.

2. PHP 연결 memcached

PHP는 Memcached와의 의사 소통을위한 Memcached Extensions를 제공합니다. 다음 코드를 통해 Memcached 서비스에 연결할 수 있습니다.

$ memcached = 새로운 memcached ();
$ memcached-> addserver ( '127.0.0.1', 11211);

다음으로`set ()`및`get ()`메소드를 사용하여 캐시 된 데이터에 액세스 할 수 있습니다.

// 캐시에 데이터를 저장하면 유효 기간은 60 초입니다. $ memcached-> set ( 'key', 'value', 60);

// 캐시에서 데이터 가져옵니다 $ value = $ memcached-> get ( 'key');

3. 캐시 SQL 쿼리 결과

자주 실행되는 SQL 쿼리의 경우 쿼리 결과를 Memcached로 캐시하여 데이터베이스 쿼리 수를 줄일 수 있습니다. 예는 다음과 같습니다.

// 쿼리 데이터 $ sql = "선택 *에서`use` id` =?";
$ stmt = $ pdo-> 준비 ($ sql);
$ stmt-> execute ([$ id]);
$ user = $ stmt-> fetch (pdo :: fetch_assoc);

// ($ memcached-> get ( 'user_'. $ id)) {캐시가 존재하는지 확인하십시오.
    // 캐시에서 데이터를 가져옵니다 $ user = $ memcached-> get ( 'user_'. $ id);
} 또 다른 {
    // 캐시가 존재하지 않고 데이터베이스를 쿼리하고 캐시 $ memcached-> set ( 'user_'. $ id, $ user, 60)을 저장합니다.
}

3. 데이터 캐시에 Redis를 사용하십시오

1. Redis를 설치하고 구성하십시오

Memcached와 마찬가지로 Redis는 효율적인 메모리 데이터 저장 도구이기도합니다. 다음 명령으로 Redis를 설치할 수 있습니다.

Sudo apt-get 설치 Redis-Server

설치가 완료되면`/etc/retis/redis.conf` configuration 파일을 편집하고 Redis의 청취 주소, 포트 및 캐시 크기를 설정하십시오.

2. PHP 연결 Redis

Memcached와 유사하게 PHP는 Redis 서비스를 연결하고 운영 할 수있는 Redis 확장 기능을 제공합니다. 다음은 Redis에 연결하는 코드입니다.

$ redis = new redis ();
$ redis-> connect ( '127.0.0.1', 6379);

마찬가지로`set ()`및`get ()`메소드를 사용하여 캐시를 조작 할 수 있습니다.

// 캐시에서 데이터를 저장하면 유효 기간은 60 초입니다. $ redis-> set ( 'key', 'value', 60);

// 캐시에서 데이터를 가져옵니다 $ value = $ redis-> get ( 'key');

3. 캐시 SQL 쿼리 결과

Redis는 SQL 쿼리 결과를 캐시하는 데 사용될 수도 있습니다. 다음은 구체적인 예입니다.

// 쿼리 데이터 $ sql = "선택 *에서`use` id` =?";
$ stmt = $ pdo-> 준비 ($ sql);
$ stmt-> execute ([$ id]);
$ user = $ stmt-> fetch (pdo :: fetch_assoc);

// if ($ redis-> get ( 'user_'. $ id)) {캐시를 확인합니다.
    // cache에서 데이터를 가져옵니다 $ user = json_decode ($ redis-> get ( 'user_'. $ id), true);
} 또 다른 {
    // 캐시가 존재하지 않고, 쿼리 및 캐시 결과를 redis-> set ( 'user_'. $ id, json_encode ($ user), 60);
}

4. 결론

데이터 캐싱 기술을 통해 웹 사이트의 응답 속도를 크게 향상시키고 데이터베이스 압력을 줄이고 성능을 향상시킬 수 있습니다. 실제 개발에서는 필요에 따라 Memcached 또는 Redis와 같은 캐시 솔루션을 선택하고 특정 상황에 맞게 최상의 결과를 얻을 수 있습니다.