Consul 服务的注册和发现
Consul 简化了分布式环境中的服务的注册和发现流程,通过 HTTP 或者 DNS 接口发现。支持外部 SaaS 提供者……...
php并发框架,让开发的脚本自动并发运行起来
PCF主要有两个目的:1.使并发程序写起来更容易。写的单个脚本可以自动并发跑起来2.使并发控制更简单。并发的进程数可以随时增多和减少,特意暂停或意外中止的程序会记录暂停点, 下次执行时从暂停点继续执行。
PCF的框架图如下
假设我们有如下的数据处理需求: 一共有200个表的数据,每个表有一百万的数据,对于每个数据要进行某种处理。
为了高效处理,需要进行并发处理,用户代码示例如下,假如在文件usercode.php中:
<?php require_once 'currFrame.php';//包含框架代码define('TABLENUM',10);//用户类继承框架类class Example extends CurrFrame { /** * 产生消息 */public function produce(){for ($i = 0;$i <TABLENUM ;$i++){$this->addMsg($i);//添加消息,此处为表序号}$this->endMsg(); //结束消息,如果没有更多消息,就要结束,否则总会尝试读取更多消息}/** * 具体处理代码 * @param $msg 当前处理的消息 * @param $pos 当前处理到的位置 */public function process($msg,$pos = NULL) {$no = $msg; $j = $pos ==NULL ? 0:$pos; for(;$j<10;$j++){ //此处放具体处理逻辑 $this->recordProcess($j); //记录处理进度}}/** *所有进程运行完成后执行的代码 */public function output(){}}$obj = new Example();$obj->run();
启动并发只要执行 php usercode.php batch 3 ,表示启动3个并发,可以随时更改并发的参数,也可以设为0,表示停止所有的处理
Consul 简化了分布式环境中的服务的注册和发现流程,通过 HTTP 或者 DNS 接口发现。支持外部 SaaS 提供者……...
xCAT (Extreme Cloud Administration Toolkit) 是一个开源的可扩展的高级集群管理和配置工具,允许使用者……...
Xen 项目专注于在一些不同的商业和开源应用中推进虚拟化,包括服务器虚拟化、基础设施即服务(IAAS)、桌……...
magent 是一款开源的Memcached代理服务器软件。 特性 保持与内存缓存服务器的连接 支持以下 memcached 命……...
幼儿园音乐的目标是给幼儿园的小朋友提供适合自己操作的音乐播放器。幼儿园的小朋友根据自己上的大、中、……...
基于C多线程网络库,欢迎大家使用,例子在代码example目录下,以后我会再增加一些例子。 文档暂时没有,……...
Min是一款开源的极简浏览器,拥有智能、快速的特点。一些特性: 通过使用DuckDuckGo在搜索栏中显示搜索结果 拦截网页内置广告和跟踪 模糊搜索 支持书签的全文搜索 阅读列表 标签页改进(标签页在右边打开并会……
BitSail 是字节跳动开源的基于分布式架构的高性能数据集成引擎,支持多种异构数据源间的数据同步,并提供离线、实时、全量、增量场景下的全域数据集成解决方案,目前服务于字节内部几乎所有业务线,包括抖音、今日……
Expose 是一个帮助图配文生成的静态网站生成器。 当你有如下的图片或视频文件夹时: Expose 的 Bash 脚本可以将这些图像和视频转换成类似 jack.ventures 或 jack.works(作者个人博客)的形式。 如果你不喜欢这……