라이브러리
[PHP] MongoDBDriverManager::getReadPreference - 관리자에 대한 ReadPreference를 반환합니다.
MongoDBDriverManager::getReadPreference
`MongoDBDriverManager::getReadPreference`는 MongoDB 드라이버의 읽기 선호도 설정을 반환합니다. 읽기 선호도는 MongoDB 클러스터에서 데이터를 읽을 때 사용하는 설정입니다. 읽기 선호도는 다음과 같은 종류가 있습니다.
- PRIMARY: 데이터를 읽을 때는 항상 PRIMARY 노드를 사용합니다.
- PRIMARY_PREFERRED: PRIMARY 노드를 우선적으로 사용합니다. PRIMARY 노드가 없을 때는 SECONDARY 노드를 사용합니다.
- SECONDARY: 데이터를 읽을 때는 SECONDARY 노드를 사용합니다.
- NEAREST: 데이터를 읽을 때는 가장 가까운 노드를 사용합니다.
예제
#hostingforum.kr
php
use MongoDBDriverManager;
use MongoDBDriverReadPreference;
$manager = new Manager("mongodb://localhost:27017");
// PRIMARY 읽기 선호도 설정
$readPreference = ReadPreference::PRIMARY;
$cursor = $manager->executeQuery("mydb.mycol", new MongoDBDriverQuery([], [], $readPreference));
foreach ($cursor as $document) {
print_r($document);
}
// PRIMARY_PREFERRED 읽기 선호도 설정
$readPreference = ReadPreference::PRIMARY_PREFERRED;
$cursor = $manager->executeQuery("mydb.mycol", new MongoDBDriverQuery([], [], $readPreference));
foreach ($cursor as $document) {
print_r($document);
}
// SECONDARY 읽기 선호도 설정
$readPreference = ReadPreference::SECONDARY;
$cursor = $manager->executeQuery("mydb.mycol", new MongoDBDriverQuery([], [], $readPreference));
foreach ($cursor as $document) {
print_r($document);
}
// NEAREST 읽기 선호도 설정
$readPreference = ReadPreference::NEAREST;
$cursor = $manager->executeQuery("mydb.mycol", new MongoDBDriverQuery([], [], $readPreference));
foreach ($cursor as $document) {
print_r($document);
}
주의점
- 읽기 선호도 설정은 MongoDB 클러스터의 노드 구성에 따라 달라질 수 있습니다.
- 읽기 선호도 설정은 데이터 일관성에 영향을 줄 수 있으므로 주의해서 사용해야 합니다.
참고
- MongoDB 공식 문서: [Read Preference](https://docs.mongodb.com/manual/core/read-preference/)
- PHP MongoDB 드라이버 공식 문서: [Read Preference](https://php.net/manual/en/mongodb-driver-readpreference.php)
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.