更多>
最新下载
24小时阅读排行榜
- 1 通配符选择器怎么用_快速匹配页面所有元素的方法
- 2 css颜色需要兼容旧浏览器怎么办_优先使用hex颜色格式
- 3 mysql差集查询如何写_mysql集合差异数据获取
- 4 .NET中的ConfigureAwait(true)和ConfigureAwait(false)有什么区别?如何做出正确选择?
- 5 Go测试如何并行执行_Go并发测试注意事项
- 6 mysql MyISAM存储引擎有什么特点_mysql引擎区别说明
- 7 如何使用select查询数据_mysql基本查询示例
- 8 MAUI怎么实现一个计时器功能 MAUI Timer使用方法
- 9 css工具如何实现动态样式_通过变量和函数动态生成样式
- 10 C# 反射调用方法方法 C#如何使用MethodInfo.Invoke动态调用方法
- 11 php代码示例如何调用api接口_php调用api接口代码示例【示例】
- 12 css如何在响应式布局中保持列间距一致_使用gap或margin控制
- 13 Go语言interface传值还是传指针_Golang接口底层行为解析
- 14 php读取rtf文件能提取文本吗_php读取rtf纯文本提取法【步骤】
- 15 css如何实现多层定位元素_利用嵌套容器和position组合
更多>
最新教程
-
- Node.js 教程
- 16531 2025-08-28
-
- CSS3 教程
- 1547471 2025-08-27
-
- Rust 教程
- 23620 2025-08-27
-
- Vue 教程
- 26006 2025-08-22
-
- PostgreSQL 教程
- 22514 2025-08-21
-
- Git 教程
- 9406 2025-08-21
下载首页 / 类库下载 / 其它类库
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
