|
|
@@ -9,29 +9,25 @@ import ( |
|
|
|
"github.com/mikespook/gearman-go/worker" |
|
|
|
) |
|
|
|
|
|
|
|
func ToUpper(job *worker.Job) ([]byte, error) { |
|
|
|
log.Printf("ToUpper: Handle=[%s]; UID=[%s], Data=[%s]\n", |
|
|
|
job.Handle, job.UniqueId, job.Data) |
|
|
|
data := []byte(strings.ToUpper(string(job.Data))) |
|
|
|
func ToUpper(job worker.Job) ([]byte, error) { |
|
|
|
log.Printf("ToUpper: Data=[%s]\n", job.Data()) |
|
|
|
data := []byte(strings.ToUpper(string(job.Data()))) |
|
|
|
return data, nil |
|
|
|
} |
|
|
|
|
|
|
|
func ToUpperDelay10(job *worker.Job) ([]byte, error) { |
|
|
|
log.Printf("ToUpperDelay10: Handle=[%s]; UID=[%s], Data=[%s]\n", |
|
|
|
job.Handle, job.UniqueId, job.Data) |
|
|
|
func ToUpperDelay10(job worker.Job) ([]byte, error) { |
|
|
|
log.Printf("ToUpper: Data=[%s]\n", job.Data()) |
|
|
|
time.Sleep(10 * time.Second) |
|
|
|
data := []byte(strings.ToUpper(string(job.Data))) |
|
|
|
data := []byte(strings.ToUpper(string(job.Data()))) |
|
|
|
return data, nil |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func main() { |
|
|
|
log.Println("Starting ...") |
|
|
|
defer log.Println("Shutdown complete!") |
|
|
|
w := worker.New(worker.Unlimited) |
|
|
|
defer w.Close() |
|
|
|
w.ErrHandler = func(e error) { |
|
|
|
w.ErrorHandler = func(e error) { |
|
|
|
log.Println(e) |
|
|
|
if e == worker.ErrConnection { |
|
|
|
proc, err := os.FindProcess(os.Getpid()) |
|
|
@@ -43,12 +39,11 @@ func main() { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
w.JobHandler = func(job *worker.Job) error { |
|
|
|
log.Printf("H=%s, UID=%s, Data=%s, DataType=%d\n", job.Handle, |
|
|
|
job.UniqueId, job.Data, job.DataType) |
|
|
|
w.JobHandler = func(job worker.Job) error { |
|
|
|
log.Printf("Data=%s\n", job.Data()) |
|
|
|
return nil |
|
|
|
} |
|
|
|
w.AddServer("127.0.0.1:4730") |
|
|
|
w.AddServer("tcp4", "127.0.0.1:4730") |
|
|
|
w.AddFunc("ToUpper", ToUpper, worker.Immediately) |
|
|
|
w.AddFunc("ToUpperTimeOut5", ToUpperDelay10, 5) |
|
|
|
w.AddFunc("ToUpperTimeOut20", ToUpperDelay10, 20) |
|
|
|