我们可以使用F5 load balancer
来扩展整体式jhipster
应用程序吗?
https://jhipster.github.io/security/提到我们可以
使用
JWT
在多个不同的服务器上扩展应用程序。
是否有任何技巧可以做到这一点,或者我们可以通过将用户定向到应用程序的不同实例来对其进行负载平衡?
问候。
这是.yo-rc.json
:
{
"generator-jhipster": {
"jhipsterVersion": "3.12.1",
"baseName": "app",
"packageName": "com.example.app",
"packageFolder": "com/example/app",
"serverPort": "8080",
"authenticationType": "jwt",
"hibernateCache": "ehcache",
"clusteredHttpSession": false,
"websocket": false,
"databaseType": "sql",
"devDatabaseType": "h2Disk",
"prodDatabaseType": "postgresql",
"searchEngine": false,
"messageBroker": false,
"buildTool": "maven",
"enableSocialSignIn": false,
"jwtSecretKey": "**",
"useSass": false,
"applicationType": "monolith",
"testFrameworks": [
"gatling"
],
"jhiPrefix": "jhi",
"otherModules": [
{
"name": "generator-jhipster-entity-audit",
"version": "2.2.2"
}
],
"enableTranslation": true,
"nativeLanguage": "fr",
"languages": [
"fr"
]
}
}
简短的回答:是的,您可以简单地将应用程序扩展到并行运行的多个实例,用户不会注意到任何差异
确切答案:JWT 和经典的有状态方法(如使用 cookie 的 HTTP 会话(之间的主要区别在于,无需存储用户会话服务器端,因为有趣的信息已经包含在 JWT 中。当您的用户登录时,JHipster应用程序会返回一个JSON Webtoken,其中包含用户的所有权限和主体数据,并使用密钥签名。使用此密钥,应用程序的每个实例都可以验证 JWT 是否正确。