server gearman 은 무엇인가?

2023.06.21 03:15

엘카 조회 수:671

참고 문서  

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!" 문자열을 뒤집는 작업을 요청하고, 워커는 뒤집는 작업을 수행하고 결과를 반환합니다.

번호 제목 날짜 조회 수
81 vmware with centos 7 secret 2019.08.23 0
80 php-fpm tcp to socket secret 2020.01.25 0
79 net::ERR_CONNECTION_REFUSED secret 2021.10.11 0
78 my.cnf secret 2019.04.11 1
77 The best configuration of php7.4-fpm / 1.5GB 2023.05.04 147
76 To download large files with rsync command. 2023.05.04 160
75 The best configuration of php7.4-fpm / 8GB 2023.05.04 232
74 mysqldump from remote db to my local server. 2023.05.04 541
73 windows hardware encrypt ssd 2024.01.23 648
» gearman 은 무엇인가? 2023.06.21 671
71 apache2 AllowOverride config 2023.05.23 745
70 mysql 백업 (shell script) file 2018.10.14 802
69 php 에서 비동기 처리하는 방법 2023.06.22 827
68 munin 설치 2018.10.13 974
67 yum install php 7.1 [6] 2018.10.10 991
66 웹 백업 (쉘 스크립트) file 2018.10.14 1340
65 yum install mariadb [2] 2018.10.10 1383
64 certbot apache multiple domain 2019.04.10 1581
63 yum install php-apcu 2019.03.12 1730
62 yum install latest redis file 2019.03.27 1830