Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I4. Implement language improvements for MOSA+ #40

Open
2 tasks
Tracked by #46
ducmle opened this issue Oct 7, 2021 · 6 comments
Open
2 tasks
Tracked by #46

I4. Implement language improvements for MOSA+ #40

ducmle opened this issue Oct 7, 2021 · 6 comments
Labels

Comments

@ducmle
Copy link
Contributor

ducmle commented Oct 7, 2021

@haworker25 @ducmle-fpt
Depends on: #39
Paper-2: mdsa: Part 2

MOSA+ = MDSA (micro-domain software architecture) architecture.

@ducmle ducmle changed the title 4. Implement language improvements for MOSA+ I4. Implement language improvements for MOSA+ Oct 7, 2021
@ducmle ducmle added the goal label Oct 7, 2021
@ducmle
Copy link
Contributor Author

ducmle commented Oct 12, 2022

@haworker25
(em liệt kê issues hàng ngày lên đây)

@ducmle
Copy link
Contributor Author

ducmle commented Oct 12, 2022

@haworker25
Error running "clean install"

Error: mvn clean install
[ERROR]   The project jda.example:jda-eg-coursemanmsa-servicestmsa:1.0 (/data/projects/jda/examples/courseman/msa/modules/servicestmsa/pom.xml) has 1 error
[ERROR]     Child module /data/projects/jda/examples/courseman/msa/modules/servicestmsa/cmodulemgnt-service of /data/projects/jda/examples/courseman/msa/modules/servicestmsa/pom.xml does not exist

@ducmle
Copy link
Contributor Author

ducmle commented Oct 13, 2022

Java JDK

  • Use Oracle Java 13.0 or above

ServiceReconfigurer.promote()

  • 1: assume service config has been uploaded into the git (used by config-server)
  • 1.3.1: initDataSource: find a way to do this automatically at service start up time. (e.g. use a library)
  • 1.4: promoteCompleted: same as ResponseEntity.ok

ServiceReconfigurerController

  • do not use 2 classes, merge into one class

Service Resiliency

@haworker25
Copy link
Contributor

haworker25 commented Oct 13, 2022

  • Used Oracle Java 13.0 but 2 functions still not work

@ducmle
Copy link
Contributor Author

ducmle commented Oct 13, 2022

  • Used Oracle Java 13.0 but 2 functions still not work

Very strange because they run on myy machine.

Please finish the code of promote() and let me try on my machine.

@ducmle
Copy link
Contributor Author

ducmle commented Oct 27, 2022

@haworker25

Service Resiliency

Implement 3 resiliency patterns (bulkhead (BH), circuit breaker (CB), fallback (FB)) into the AcademicAdministration service

Design (abstract):
ControllerTk.invokeService:

  • BH: use thread pool (e.g. Executors) to execute the service invocation on a thread
  • CB: check for service invocation timeout. Flag the service instance as bad if timeout occurs without any result
  • FB: use the FB service instance when CB occurs. Look up the alternative service instance and invoke ControllerTk.invokeService again to repeat the process.
    • this recursive invocation is necessary to ensure that resiliency is applied to every service invocation

Discussion

  1. How to unregister a service instance from Eureka server:
  • using InstanceRegistry.cancel of the Eureka server

@ducmle ducmle pinned this issue Dec 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants