2

Running Fedora, PHP/Gearman/MySQL/Drizzle.

Built Gearman/Drizzle from source, and have the process running on a linux/fedora box. I created the mysql test table, and can see that the Gearman Daemon instance can access/interface with the mysql service. I'm running the Gearman and mysql processes on the same box, using TCP.

When Gearman is started, and points to the MySQL account, I can see the initial select statements in the DEBUG information that's displayed as the Gearman process runs.

However, I'm not sure what I need to do to actually test that a job from the Client is stored in the mysql Table.

I created a test client that replicates the Gearman Client/Worker "Review" test, that normally works if the worker is running, and ran the client without the worker. I see in the DEBUG process that the client connects with the Gearman daemon, but when I examine the mysql table, nothing is in the table.

So my question really boils down to determining what I need to do to actually be able to see/ensure that jobs/data is really written to the actual mysql table.

Is there a given flag, method to call somewhere to establish that data is to be stored in the mysql table if not processed by the worker? Shouldn't a job be stored in the table, and then removed once it's processed? Or am I missing something in the flow?

4

1 回答 1

1

http://gearman.org/manual/job_server/#persistent_queues

我想你正在寻找的是:

gearmand --queue-type=mysql --mysql-host=hostname
于 2013-10-01T22:48:28.953 回答