spring rest endpoint call propagation using kafka
I have this requirement and can't think of a way forward. Any help is appreciated.
I have two instances of same REST spring boot application running with different data version. Let say, instance 1-> running on data version 1 and instance 2 -> running data version 2. This is a REST application which has few REST controllers and exposes some endpoints.
Consider all the traffic is handled by instance 1. If i hit a "endpoint1" on instance1 then it perform's some action and the data is stored in-memory. I want the same action to be performed on instance 2 so that i create the same thing in-memory for instance 2 without manually calling the endpoint. In-memory object are very large and takes around 1 GB each.
I want to achieve this so that when instance 1 is ready to die and instance3-> running on data version 3 is available then i can migrate the user to instance 2 without loosing the in-memory objects.
One option is to publish a msg on KAFKA capturing all the parameters using AOP from instance 1 but am not sure how to handle it in instance 2. I don't have any code right now to paste here.
java rest spring-boot
add a comment |
I have this requirement and can't think of a way forward. Any help is appreciated.
I have two instances of same REST spring boot application running with different data version. Let say, instance 1-> running on data version 1 and instance 2 -> running data version 2. This is a REST application which has few REST controllers and exposes some endpoints.
Consider all the traffic is handled by instance 1. If i hit a "endpoint1" on instance1 then it perform's some action and the data is stored in-memory. I want the same action to be performed on instance 2 so that i create the same thing in-memory for instance 2 without manually calling the endpoint. In-memory object are very large and takes around 1 GB each.
I want to achieve this so that when instance 1 is ready to die and instance3-> running on data version 3 is available then i can migrate the user to instance 2 without loosing the in-memory objects.
One option is to publish a msg on KAFKA capturing all the parameters using AOP from instance 1 but am not sure how to handle it in instance 2. I don't have any code right now to paste here.
java rest spring-boot
What you need is Distributed Object store because of large object size. You may thiink about using a distributed object store which will store the data behind scene and in case of fail over, instance 2 will be ready to serve. Applicaton Processes In-Memory caches are not that good option so need to move to distbuted object store.
– bittu
Nov 14 '18 at 18:50
add a comment |
I have this requirement and can't think of a way forward. Any help is appreciated.
I have two instances of same REST spring boot application running with different data version. Let say, instance 1-> running on data version 1 and instance 2 -> running data version 2. This is a REST application which has few REST controllers and exposes some endpoints.
Consider all the traffic is handled by instance 1. If i hit a "endpoint1" on instance1 then it perform's some action and the data is stored in-memory. I want the same action to be performed on instance 2 so that i create the same thing in-memory for instance 2 without manually calling the endpoint. In-memory object are very large and takes around 1 GB each.
I want to achieve this so that when instance 1 is ready to die and instance3-> running on data version 3 is available then i can migrate the user to instance 2 without loosing the in-memory objects.
One option is to publish a msg on KAFKA capturing all the parameters using AOP from instance 1 but am not sure how to handle it in instance 2. I don't have any code right now to paste here.
java rest spring-boot
I have this requirement and can't think of a way forward. Any help is appreciated.
I have two instances of same REST spring boot application running with different data version. Let say, instance 1-> running on data version 1 and instance 2 -> running data version 2. This is a REST application which has few REST controllers and exposes some endpoints.
Consider all the traffic is handled by instance 1. If i hit a "endpoint1" on instance1 then it perform's some action and the data is stored in-memory. I want the same action to be performed on instance 2 so that i create the same thing in-memory for instance 2 without manually calling the endpoint. In-memory object are very large and takes around 1 GB each.
I want to achieve this so that when instance 1 is ready to die and instance3-> running on data version 3 is available then i can migrate the user to instance 2 without loosing the in-memory objects.
One option is to publish a msg on KAFKA capturing all the parameters using AOP from instance 1 but am not sure how to handle it in instance 2. I don't have any code right now to paste here.
java rest spring-boot
java rest spring-boot
asked Nov 14 '18 at 13:24
ProgrammerBoyProgrammerBoy
501212
501212
What you need is Distributed Object store because of large object size. You may thiink about using a distributed object store which will store the data behind scene and in case of fail over, instance 2 will be ready to serve. Applicaton Processes In-Memory caches are not that good option so need to move to distbuted object store.
– bittu
Nov 14 '18 at 18:50
add a comment |
What you need is Distributed Object store because of large object size. You may thiink about using a distributed object store which will store the data behind scene and in case of fail over, instance 2 will be ready to serve. Applicaton Processes In-Memory caches are not that good option so need to move to distbuted object store.
– bittu
Nov 14 '18 at 18:50
What you need is Distributed Object store because of large object size. You may thiink about using a distributed object store which will store the data behind scene and in case of fail over, instance 2 will be ready to serve. Applicaton Processes In-Memory caches are not that good option so need to move to distbuted object store.
– bittu
Nov 14 '18 at 18:50
What you need is Distributed Object store because of large object size. You may thiink about using a distributed object store which will store the data behind scene and in case of fail over, instance 2 will be ready to serve. Applicaton Processes In-Memory caches are not that good option so need to move to distbuted object store.
– bittu
Nov 14 '18 at 18:50
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%2f53301300%2fspring-rest-endpoint-call-propagation-using-kafka%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%2f53301300%2fspring-rest-endpoint-call-propagation-using-kafka%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
What you need is Distributed Object store because of large object size. You may thiink about using a distributed object store which will store the data behind scene and in case of fail over, instance 2 will be ready to serve. Applicaton Processes In-Memory caches are not that good option so need to move to distbuted object store.
– bittu
Nov 14 '18 at 18:50