Open Closed

Is the internal gateway used in the microservice template? #1581


User avatar
0
jogoertzen created

I am currently attempting to deploy v4.3.3 of the microservice template to OpenShift, and I realized that I had yet to properly configure the internal gateway routes (ie. it was still using the default configuration which points to various ports on localhost), but the overall application still seems to work fine. I even scaled the internal gateway deployment down to 0 pods and I still can't find anything that breaks as a result. The only thing I can find that even looks like it should talk to the internal gateway is the administration service which has the following default configuration pointing to 44302 (ie. the internal gateway port), but it would seem that the administration service doesn't use it.

// services\administration\src\MyProject.AdministrationService.HttpApi.Host\appsettings.json

{
  "RemoteServices": {
    "Default": {
      "BaseUrl": "https://localhost:44302/",
      "UseCurrentAccessToken": "false"
    }
  }
}

Am I missing something here? Does the internal gateway play a role at all in the microservice template? Thanks!

  • ABP Framework version: v4.3.3
  • UI type: Angular
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes
  • Exception message and stack trace: N/A
  • Steps to reproduce the issue:" N/A

4 Answer(s)
  • User Avatar
    0
    liangshiwei created
    Support Team Fullstack Developer

    See https://docs.abp.io/en/commercial/latest/startup-templates/microservice/gateways

  • User Avatar
    0
    jogoertzen created

    Hi liangshiwei,

    Was there a particular section of the documentation you linked to above that you would like me to focus on?

    I believe I understand how the internal gateway is supposed to work, but it seems like the current version of the Microservice template does not actually use the internal gateway at all. In other words, the template seems to work fine even if the internal gateway is down.

    Are you aware of this?

  • User Avatar
    0
    gterdem created
    Senior .NET Developer

    User permissions are requested by AdministrationService (permission management) from IdentityService (IdentityUserAppService) behind the scenes.

    So, when you try to get the list of permissions of a user (Identity Management-> User Management -> Permission action), this internal communication happens.

    Does the internal gateway play a role at all in the microservice template? Thanks!

    Yes, big time. It is the gateway and locator for other microservices when you try sync-communications (http) between microservices.

    Default template uses it for communication betweeen AdministrationService and IdentityService for user permissions as i have mentioned above.

    I will fix missing points in documentation about this, thank you.

  • User Avatar
    0
    jogoertzen created

    @gterdem

    Thanks for the clarification. I had not tested bringing up the list of permissions for a user, but I see now that it does not work when the internal gateway is down.

Made with ❤️ on ABP v9.1.0-preview. Updated on November 11, 2024, 11:11