[php] 데이터베이스 연동을 위한 연결 풀링 구현 방법

데이터베이스 연결 풀링은 많은 어플리케이션에서 성능을 향상시키기 위한 중요한 수단입니다. 이번 포스팅에서는 PHP 언어를 사용하여 데이터베이스 연결 풀링을 구현하는 방법에 대해 알아보겠습니다.

1. 데이터베이스 연결 객체 초기화

// 데이터베이스 연결 정보 설정
$dbServer = "localhost";
$dbUsername = "username";
$dbPassword = "password";
$dbName = "database_name";

// 데이터베이스 연결 객체 초기화
$conn = new mysqli($dbServer, $dbUsername, $dbPassword, $dbName);

// 연결 오류 발생 시 처리
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

2. 연결 풀링 구현

// 데이터베이스 연결 객체를 전역 변수로 선언
global $conn;

// 데이터베이스 연결 객체를 재사용하도록 하는 함수
function get_connection() {
    global $conn;
    return $conn;
}

// 데이터베이스 연결 객체 반환 후 사용이 끝난 후 연결 해제
function release_connection() {
    global $conn;
    $conn->close();
}

위의 코드를 보면, 데이터베이스 연결 객체를 전역 변수로 선언하여 함수를 통해 재사용하도록 하고, 연결 해제 함수를 통해 연결을 종료하는 것을 확인할 수 있습니다.

3. 연결 풀링 사용 예제

// 데이터베이스 연결 객체 획득
$dbConn = get_connection();

// 데이터베이스 쿼리 수행
$result = $dbConn->query("SELECT * FROM table_name");

// 결과 처리
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 results";
}

// 데이터베이스 연결 객체 반환
release_connection();

위의 코드에서는 get_connection() 함수를 사용하여 데이터베이스 연결 객체를 획득하고, 데이터베이스 쿼리를 수행한 후 release_connection() 함수를 사용하여 연결을 해제하는 것을 확인할 수 있습니다.

위 방법을 통해 데이터베이스 연결 풀링을 구현할 수 있습니다. 데이터베이스 연결 풀링은 어플리케이션의 성능을 향상시키고, 데이터베이스 연결 관리를 효율적으로 할 수 있는 중요한 기술입니다.


참고문헌:

  1. PHP 공식 문서: https://www.php.net/manual/en/book.mysqli.php
  2. “PHP Database Connection”: https://www.w3schools.com/php/php_mysql_connect.asp