generate one time url instead of using load balancer to direct requests to a dynamic pool of servers
I have a pool of servers; each of the server in that pool does some heavy computation. That pool changes pretty frequently as new servers are spun up to accommodate the traffic, and some unstable servers are killed manually.
I wish to make a request to any of the servers, in parallel, en masse (~200 requests at any given time). I think we can set up a load balancer to distribute the requests to the servers. A co-worker suggests that we consider keeping an RPC connection open to an endpoint which will output one-time use URL, and that I hit that URL with a normal HTTP POST request. This will do the work of load balancing for us, while keeping the servers secure and intact. I'm still a pretty junior engineer so I am not so sure about the pros and cons of each approach. Can you give some thoughts or other questions I should try to answer first? What can the second approach do that the classic load balancer cannot?
request http-post load-balancing rpc grpc
add a comment |
I have a pool of servers; each of the server in that pool does some heavy computation. That pool changes pretty frequently as new servers are spun up to accommodate the traffic, and some unstable servers are killed manually.
I wish to make a request to any of the servers, in parallel, en masse (~200 requests at any given time). I think we can set up a load balancer to distribute the requests to the servers. A co-worker suggests that we consider keeping an RPC connection open to an endpoint which will output one-time use URL, and that I hit that URL with a normal HTTP POST request. This will do the work of load balancing for us, while keeping the servers secure and intact. I'm still a pretty junior engineer so I am not so sure about the pros and cons of each approach. Can you give some thoughts or other questions I should try to answer first? What can the second approach do that the classic load balancer cannot?
request http-post load-balancing rpc grpc
add a comment |
I have a pool of servers; each of the server in that pool does some heavy computation. That pool changes pretty frequently as new servers are spun up to accommodate the traffic, and some unstable servers are killed manually.
I wish to make a request to any of the servers, in parallel, en masse (~200 requests at any given time). I think we can set up a load balancer to distribute the requests to the servers. A co-worker suggests that we consider keeping an RPC connection open to an endpoint which will output one-time use URL, and that I hit that URL with a normal HTTP POST request. This will do the work of load balancing for us, while keeping the servers secure and intact. I'm still a pretty junior engineer so I am not so sure about the pros and cons of each approach. Can you give some thoughts or other questions I should try to answer first? What can the second approach do that the classic load balancer cannot?
request http-post load-balancing rpc grpc
I have a pool of servers; each of the server in that pool does some heavy computation. That pool changes pretty frequently as new servers are spun up to accommodate the traffic, and some unstable servers are killed manually.
I wish to make a request to any of the servers, in parallel, en masse (~200 requests at any given time). I think we can set up a load balancer to distribute the requests to the servers. A co-worker suggests that we consider keeping an RPC connection open to an endpoint which will output one-time use URL, and that I hit that URL with a normal HTTP POST request. This will do the work of load balancing for us, while keeping the servers secure and intact. I'm still a pretty junior engineer so I am not so sure about the pros and cons of each approach. Can you give some thoughts or other questions I should try to answer first? What can the second approach do that the classic load balancer cannot?
request http-post load-balancing rpc grpc
request http-post load-balancing rpc grpc
asked Nov 15 '18 at 11:29
ampersandsampersands
7310
7310
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
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%2f53318473%2fgenerate-one-time-url-instead-of-using-load-balancer-to-direct-requests-to-a-dyn%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
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%2f53318473%2fgenerate-one-time-url-instead-of-using-load-balancer-to-direct-requests-to-a-dyn%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