这里只是简单记录下
gearman异步任务下发过多的时候可以对没处理完成的异步任务持久化保存,持久化的方式很多支持mysql psql memcache等
在gearman编译过程中的./configure步骤时,会自动检测系统内已有安装环境,并在configure完成后提示支持哪些持久化扩展,这里我只用了mysql 方式
操作步骤如下
在mysql创建数据库及对应数据表
create database gearman
create table `gearman_queue` (
`unique_key` varchar(64) NOT NULL,
`function_name` varchar(255) NOT NULL,
`priority` int(11) NOT NULL,
`data` LONGBLOB NOT NULL,
`when_to_run` INT, PRIMARY KEY (`unique_key`)
)
//在启动gearmand的时候指定扩展类型 扩展对应的端口 用户名 密码 以及数据库
gearmand --queue-type mysql --mysql-host 127.0.0.1 --mysql-db gearman --mysql-user "root" --mysql-password "" -w 2 -d
gearman异步任务下发过多的时候可以对没处理完成的异步任务持久化保存,持久化的方式很多支持mysql psql memcache等
在gearman编译过程中的./configure步骤时,会自动检测系统内已有安装环境,并在configure完成后提示支持哪些持久化扩展,这里我只用了mysql 方式
操作步骤如下
在mysql创建数据库及对应数据表
create database gearman
create table `gearman_queue` (
`unique_key` varchar(64) NOT NULL,
`function_name` varchar(255) NOT NULL,
`priority` int(11) NOT NULL,
`data` LONGBLOB NOT NULL,
`when_to_run` INT, PRIMARY KEY
)
//在启动gearmand的时候指定扩展类型 扩展对应的端口 用户名 密码 以及数据库
gearmand --queue-type mysql --mysql-host 127.0.0.1 --mysql-db gearman --mysql-user "root" --mysql-password "" -w 2 -d