라이브러리

[PHP] mqseries_connx - MQSeries MQCONNX




MQSeries는 IBM의 Message Queueing 시스템으로, 메시지 큐를 사용하여 메시지를 전달하는 시스템입니다. PHP에서 MQSeries를 사용하기 위한 라이브러리는 PHP-MQSeries 이며, 이 라이브러리를 사용하여 MQSeries와 통신할 수 있습니다.

MQSeries Connection


MQSeries Connection은 MQSeries와 통신하기 위해 필요한 정보를 저장하는 객체입니다. PHP-MQSeries 라이브러리를 사용하여 MQSeries Connection을 생성하는 방법은 다음과 같습니다.

#hostingforum.kr
php

require_once 'MQSeries.php';



// MQSeries Connection 정보

$host = 'localhost';

$port = 1414;

$channel = 'SYSTEM.DEF.SVRCONN';

$queueManager = 'QM1';

$connection = new MQSeriesConnx($host, $port, $channel, $queueManager);



MQSeries Connection 옵션 설정


MQSeries Connection 옵션을 설정하는 방법은 다음과 같습니다.

#hostingforum.kr
php

// MQSeries Connection 옵션 설정

$connection->setOption(MQSeries::OPT_MQCHALLOPT, MQSeries::MQCACHALLOPT);

$connection->setOption(MQSeries::OPT_MQCMDOPT, MQSeries::MQCMDOPT);



MQSeries Connection 연결


MQSeries Connection을 연결하는 방법은 다음과 같습니다.

#hostingforum.kr
php

// MQSeries Connection 연결

if (!$connection->connect()) {

    echo "Connection failed: " . $connection->getErrorMessage() . "
";

    exit;

}



MQSeries Connection 종료


MQSeries Connection을 종료하는 방법은 다음과 같습니다.

#hostingforum.kr
php

// MQSeries Connection 종료

$connection->disconnect();



MQSeries Queue Open


MQSeries Queue를 열어주는 방법은 다음과 같습니다.

#hostingforum.kr
php

// MQSeries Queue Open

$queue = new MQSeriesQueue($connection, 'MY.QUEUE');

if (!$queue->open()) {

    echo "Queue open failed: " . $queue->getErrorMessage() . "
";

    exit;

}



MQSeries Queue Close


MQSeries Queue를 닫아주는 방법은 다음과 같습니다.

#hostingforum.kr
php

// MQSeries Queue Close

$queue->close();



MQSeries Message Put


MQSeries Message를 넣어주는 방법은 다음과 같습니다.

#hostingforum.kr
php

// MQSeries Message Put

$message = new MQSeriesMessage();

$message->put('Hello, World!');

if (!$queue->put($message)) {

    echo "Message put failed: " . $queue->getErrorMessage() . "
";

    exit;

}



MQSeries Message Get


MQSeries Message를 가져오는 방법은 다음과 같습니다.

#hostingforum.kr
php

// MQSeries Message Get

$message = $queue->get();

if (!$message) {

    echo "Message get failed: " . $queue->getErrorMessage() . "
";

    exit;

}

echo $message->get() . "
";



예제


#hostingforum.kr
php

require_once 'MQSeries.php';



// MQSeries Connection 정보

$host = 'localhost';

$port = 1414;

$channel = 'SYSTEM.DEF.SVRCONN';

$queueManager = 'QM1';



// MQSeries Connection 객체 생성

$connection = new MQSeriesConnx($host, $port, $channel, $queueManager);



// MQSeries Connection 옵션 설정

$connection->setOption(MQSeries::OPT_MQCHALLOPT, MQSeries::MQCACHALLOPT);

$connection->setOption(MQSeries::OPT_MQCMDOPT, MQSeries::MQCMDOPT);



// MQSeries Connection 연결

if (!$connection->connect()) {

    echo "Connection failed: " . $connection->getErrorMessage() . "
";

    exit;

}



// MQSeries Queue 객체 생성

$queue = new MQSeriesQueue($connection, 'MY.QUEUE');

if (!$queue->open()) {

    echo "Queue open failed: " . $queue->getErrorMessage() . "
";

    exit;

}



// MQSeries Message 객체 생성

$message = new MQSeriesMessage();

$message->put('Hello, World!');



// MQSeries Message Put

if (!$queue->put($message)) {

    echo "Message put failed: " . $queue->getErrorMessage() . "
";

    exit;

}



// MQSeries Message Get

$message = $queue->get();

if (!$message) {

    echo "Message get failed: " . $queue->getErrorMessage() . "
";

    exit;

}

echo $message->get() . "
";



// MQSeries Queue Close

$queue->close();



// MQSeries Connection 종료

$connection->disconnect();



이 예제는 MQSeries Connection을 연결하고, MQSeries Queue를 열어주고, MQSeries Message를 넣어주고, MQSeries Message를 가져오는 과정을 보여줍니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 385 페이지

검색

게시물 검색