server gearman 은 무엇인가?

2023.06.21 03:15

엘카 조회 수:332

참고 문서  

Gearman은 여러 시스템에서 작업을 분배하고 처리할 수 있게 해주는 오픈 소스 애플리케이션 프레임워크입니다. 그것은 여러 서버에서 대규모 작업을 병렬로 수행하는 능력을 제공하며, 이를 통해 사용자는 높은 가용성, 시스템 장애 허용성, 그리고 분산 컴퓨팅의 장점을 활용할 수 있습니다.

Gearman의 주요 구성 요소는 클라이언트, 워커, 그리고 작업 서버입니다.

  • 클라이언트 : 작업을 요청하는 애플리케이션입니다.
  • 워커 : 실제로 작업을 처리하는 애플리케이션입니다.
  • 작업 서버 : 클라이언트의 요청을 받아서 워커에게 분배하고, 작업 완료를 클라이언트에게 알려주는 역할을 합니다.

PHP의 경우 Gearman을 사용하려면, PHP Gearman 확장을 설치해야 합니다. 이 확장은 PHP 애플리케이션에서 Gearman의 클라이언트나 워커로서의 역할을 수행할 수 있게 해줍니다. 그 결과 PHP 애플리케이션은 작업을 분배하고, 병렬로 처리하며, 필요에 따라 다른 시스템에 작업을 위임할 수 있게 됩니다.

아래는 PHP에서 Gearman을 사용하는 간단한 예시입니다.

// 클라이언트
$client= new GearmanClient();
$client->addServer();
print $client->do("reverse", "Hello World!");

// 워커
$worker= new GearmanWorker();
$worker->addServer();
$worker->addFunction("reverse", "my_reverse_function");
while ($worker->work());

function my_reverse_function($job) {
  return strrev($job->workload());
}

위의 예시에서 클라이언트는 "Hello World!" 문자열을 뒤집는 작업을 요청하고, 워커는 뒤집는 작업을 수행하고 결과를 반환합니다.

번호 제목 날짜 조회 수
21 유닉스 계정 관리 2013.10.15 14650
20 PHP 설치 file 2010.05.11 15057
19 솔라리스 mount options 2013.10.06 15324
18 ftp file 2010.07.23 15443
17 리눅스 자동 시작 file 2010.05.21 15895
16 ssh 로그인 제한 2011.04.05 16470
15 Apache 설치 file 2010.05.11 16667
14 CentOS 6.2 다운로드 / 설치 [1] file 2012.04.15 17032
13 MySQL 설치 file 2010.05.11 17280
12 Zend Optimizer + eAccelerator + Suhosin file 2010.05.11 18249
11 Linux 설치시 파티션 관리 file 2012.05.12 19206
10 php + ssh2 file 2010.06.05 20205
9 sAPM file 2010.05.12 20264
8 Lighttpd 설치 file 2010.05.11 20679
7 CentOS 6 - MySQL 5.5 설치 [1] file 2012.04.15 21746
6 Linux Memory 사용량 file 2012.05.16 25005
5 리눅스 계정 생성/변경 [67] 2011.04.02 29130
4 CentOS 6 - Apache 2.4.1 컴파일 / 보안 설정 [1] 2012.04.15 30240
3 마인크래프트 조합법 1 file 2011.04.01 38383
2 VPS (가상 호스팅) 비교 file 2010.05.12 62201