Asynchronous process to consume items from queue and send them to external API
up vote
0
down vote
favorite
I have a requirement: taking items from a queue and send them to an external API. And keep doing that process without waiting for the response from external API. For now, I let the class implements Runnable and in the run method I dequeue the items and send them. Then I use Excutor.newCachedThreadPool() to handle that process. I am not sure it is right or not. Any suggestion or correction?
java multithreading asynchronous queue
add a comment |
up vote
0
down vote
favorite
I have a requirement: taking items from a queue and send them to an external API. And keep doing that process without waiting for the response from external API. For now, I let the class implements Runnable and in the run method I dequeue the items and send them. Then I use Excutor.newCachedThreadPool() to handle that process. I am not sure it is right or not. Any suggestion or correction?
java multithreading asynchronous queue
Also, have a question about which one is better to implement this, Runnable or Callable?
– HenlenLee
Nov 9 at 21:12
Callable can return Object and can throw exception whereas Runnable cant so it basically depends on your requirement on what to use.
– Rakesh
Nov 9 at 21:58
Using Executor makes sense when you have many small tasks. But you have a single long task, so it is logical to run it in a dedicated thread, rather than submit to an executor.
– Alexei Kaigorodov
Nov 10 at 4:00
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I have a requirement: taking items from a queue and send them to an external API. And keep doing that process without waiting for the response from external API. For now, I let the class implements Runnable and in the run method I dequeue the items and send them. Then I use Excutor.newCachedThreadPool() to handle that process. I am not sure it is right or not. Any suggestion or correction?
java multithreading asynchronous queue
I have a requirement: taking items from a queue and send them to an external API. And keep doing that process without waiting for the response from external API. For now, I let the class implements Runnable and in the run method I dequeue the items and send them. Then I use Excutor.newCachedThreadPool() to handle that process. I am not sure it is right or not. Any suggestion or correction?
java multithreading asynchronous queue
java multithreading asynchronous queue
asked Nov 9 at 21:07
HenlenLee
697
697
Also, have a question about which one is better to implement this, Runnable or Callable?
– HenlenLee
Nov 9 at 21:12
Callable can return Object and can throw exception whereas Runnable cant so it basically depends on your requirement on what to use.
– Rakesh
Nov 9 at 21:58
Using Executor makes sense when you have many small tasks. But you have a single long task, so it is logical to run it in a dedicated thread, rather than submit to an executor.
– Alexei Kaigorodov
Nov 10 at 4:00
add a comment |
Also, have a question about which one is better to implement this, Runnable or Callable?
– HenlenLee
Nov 9 at 21:12
Callable can return Object and can throw exception whereas Runnable cant so it basically depends on your requirement on what to use.
– Rakesh
Nov 9 at 21:58
Using Executor makes sense when you have many small tasks. But you have a single long task, so it is logical to run it in a dedicated thread, rather than submit to an executor.
– Alexei Kaigorodov
Nov 10 at 4:00
Also, have a question about which one is better to implement this, Runnable or Callable?
– HenlenLee
Nov 9 at 21:12
Also, have a question about which one is better to implement this, Runnable or Callable?
– HenlenLee
Nov 9 at 21:12
Callable can return Object and can throw exception whereas Runnable cant so it basically depends on your requirement on what to use.
– Rakesh
Nov 9 at 21:58
Callable can return Object and can throw exception whereas Runnable cant so it basically depends on your requirement on what to use.
– Rakesh
Nov 9 at 21:58
Using Executor makes sense when you have many small tasks. But you have a single long task, so it is logical to run it in a dedicated thread, rather than submit to an executor.
– Alexei Kaigorodov
Nov 10 at 4:00
Using Executor makes sense when you have many small tasks. But you have a single long task, so it is logical to run it in a dedicated thread, rather than submit to an executor.
– Alexei Kaigorodov
Nov 10 at 4:00
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53233279%2fasynchronous-process-to-consume-items-from-queue-and-send-them-to-external-api%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Also, have a question about which one is better to implement this, Runnable or Callable?
– HenlenLee
Nov 9 at 21:12
Callable can return Object and can throw exception whereas Runnable cant so it basically depends on your requirement on what to use.
– Rakesh
Nov 9 at 21:58
Using Executor makes sense when you have many small tasks. But you have a single long task, so it is logical to run it in a dedicated thread, rather than submit to an executor.
– Alexei Kaigorodov
Nov 10 at 4:00