搜尋
Beanstalkd的PHP客戶端程式庫

Beanstalk,一個高效能、輕量級的分散式記憶體佇列系統,最初設計的目的是想透過後台非同步執行耗時的任務來降低高容量Web應​​用系統的頁面存取延遲,支援過有9.5 million用戶的Facebook Causes應用。

後來開源,現在有PostRank大規模部署和使用,每天處理百萬級任務。 Beanstalkd是典型的類Memcached設計,協議和使用方式都是同樣的風格,所以使用過memcached的用戶會覺得Beanstalkd似曾相識。

高性能離不開非同步,非同步也離不開佇列,而其內部都是Producer-Comsumer模式的原理。

Beanstalkd的PHP客戶端程式庫

#!/usr/bin/env php
<?php
define('BASE_DIR', realpath(__DIR__.'/..'));
define('PHAR_FILENAME', 'pheanstalk.phar');
define('PHAR_FULLPATH', BASE_DIR.'/'.PHAR_FILENAME);
// ----------------------------------------
reexecute_if_phar_readonly($argv);
delete_existing_pheanstalk_phar();
build_pheanstalk_phar();
verify_pheanstalk_phar();
exit(0);
// ----------------------------------------
// See: http://www.php.net/manual/en/phar.configuration.php#ini.phar.readonly
function reexecute_if_phar_readonly($argv)
{
    if (ini_get('phar.readonly') && !in_array('--ignore-readonly', $argv)) {
        $command = sprintf(
            'php -d phar.readonly=0 %s --ignore-readonly',
            implode($argv, ' ')
        );
        echo "Phar configured readonly in php.ini; attempting to re-execute:\n";
        echo "$command\n";
        passthru($command, $exitStatus);
        exit($exitStatus);
    }
}
function delete_existing_pheanstalk_phar()
{
    if (file_exists(PHAR_FULLPATH)) {
        printf("- Deleting existing %s\n", PHAR_FILENAME);
        unlink(PHAR_FULLPATH);
    }
}
function build_pheanstalk_phar()
{
    printf("- Building %s from %s\n", PHAR_FILENAME, BASE_DIR);
    $phar = new Phar(PHAR_FULLPATH);
    $phar->buildFromDirectory(BASE_DIR);
    $phar->setStub(
        $phar->createDefaultStub('vendor/autoload.php')
    );
}
function verify_pheanstalk_phar()
{
    $phar = new Phar(PHAR_FULLPATH);
    printf("- %s built with %d files.\n", PHAR_FILENAME, $phar->count());
}


#
免責聲明

本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn

相關文章

PHP中的類別庫PHP中的類別庫

26May2023

PHP是一種非常流行的開源腳本語言,它廣泛地用於Web開發。 PHP提供了許多功能強大的類別庫,這些類別庫為Web開發者提供了許多便利。在本文中,我們將介紹PHP中的一些常見類別庫和它們的用法。 StandardPHPLibrary(SPL)SPL是PHP的標準類別庫,提供了許多解決問題的類別和介面。這些類別包含了幾乎所有PHP開發中可能需要的資料結構和演算法,例如:堆

常用的PHP類庫常用的PHP類庫

22Nov2016

以下是一些非常有用的PHP類別庫,相信一定可以為你的WEB開發提供更好和更快速的方法。 圖表庫 下面的類別庫可以讓你很簡的創建複雜的圖表和圖片。當然,它們需要GD庫的支援。 pChart - 一個可以建立統計圖的函式庫。 Libchart - 這也是一個簡單的統計圖庫。 JpGraph - 一個物件導向的圖片建立類別。 Open Flash Chart - 這是一個基於Flash的統計圖。 …

知識寶庫:Java Hibernate 框架知識點的全面梳理知識寶庫:Java Hibernate 框架知識點的全面梳理

19Feb2024

1.實體類別實體類別是Hibernate中最重要的概念之一,它表示資料庫中的一張表。實體類別中的屬性對應於表中的列,實體類別中的方法對應於表中的操作。 @EntitypublicclassUser{@Id@GeneratedValueprivateLongid;privateStringname;privateStringemail;//省略其他屬性和方法}2.資料存取物件資料存取物件(DAO)是Hibernate中另一個重要的概念,它負責對資料庫進行操作。 DAO通常是一個接口,它定義了對資料庫進行操作的

如何有效地使用 PHP 函數庫中的不同類別?如何有效地使用 PHP 函數庫中的不同類別?

26Apr2024

PHP函數庫包含以下類別:核心類別:基本類型、數學、字串、陣列日期和時間類別:日期、時間、時區檔案和目錄類別:檔案、目錄網路類別:套接字、URL、HTTP安全類別:加密、雜湊、隨機數其他類別:異常、調試、影像

php如何使用PHP圖片處理類別庫?php如何使用PHP圖片處理類別庫?

02Jun2023

PHP圖片處理類別庫是PHP開發者常用的工具之一,它可以幫助我們快速輕鬆地對圖片進行編輯、剪裁、縮放等操作。本文將介紹如何使用PHP圖片處理類別庫。一、什麼是PHP圖片處理類別庫? PHP圖片處理類別庫是為了方便PHP開發者對圖片進行快速處理而開發的一組工具包。它可以處理JPG、PNG、GIF和BMP等圖片格式,實現圖片縮放、旋轉、裁剪等多

php資料庫備份類別 分享一個不錯的php資料庫備份類php資料庫備份類別 分享一個不錯的php資料庫備份類

25Jul2016

php資料庫備份類別 分享一個不錯的php資料庫備份類

See all articles