首页 > 代码库 > gearman with postgresql as persistent Queuing
gearman with postgresql as persistent Queuing
gearman is a good thing
gearman client --------------> gearman server <------------------------gearman worker
clients are requesting to handler something,
gearman server is delivering jobs
gearman workers get some jobs and finish.
So different programming languages can work together.
Now we need to plant gearman persistent queues on postgresql.
So.
Now
Persistent Queue
- Tools: gearman, postgresql, python, django model and other 3rd party libs
bash sudo pip install gearman && sudo apt-get install gearman -y
- Database settings: [username] = gearman, [password] = ‘gearman_password_123‘, [database] = ‘chatservice‘, [port]=5432, [table_name] = queue123
sudo su - postgres# Then, psql# ThenCREATE DATABASE gearman;CREATE USER gearman with password gearman_password_123;GRANT ALL PRIVILEGES ON DATABASE gearman to gearman;
There are two ways to make gearman work with Postgresql server
FIRST WAY
- Postgresql
To get Postgresql working you need to use the -q Postgeres command line option.
Below is a command line to get persistent queues working with Postgresql. This command line was run on Ubuntu 12.04 server, Postgresql version 9.1, and Gearman v 0.27.
gearmand -L 127.0.0.1 –libpq-conninfo ‘hostaddr=127.0.0.1 port=5432 dbname=gearman user=gearman password=gearman_password_123‘ –libpq-table=gearmanqueue1 –verbose DEBUG -q Postgres
- Also note: gearmand will create the table if it does not already exist. In the case above, it will create a table named gearmanqueue1
- You can see
/var/log/gearman-job-server/gearman.log
for log if error or somehow.
SECOND WAY
- Edit the file
/etc/default/gearman_job_server
and make sure it would look like this:
export PGHOST=127.0.0.1export PGPORT=5432export PGUSER=gearmanexport PGPASSWORD=gearman_password_123export PGDATABASE=gearmanPARAMS="-q Postgres --libpq-table=gearmanqueue1 --verbose DEBUG"
- Then try to start the service
bash sudo service gearman-job-server start
, gearman will auto-matically create a table ‘gearmanqueue1‘ there.
The second way is recommended.
gearman with postgresql as persistent Queuing
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。