情景:我们有一个带有3个Docker Container (前端、后端、数据库)的webapp (我将在下面的上下文中将其称为' Unit‘),我们想要做一个演示端,其中每个访问者将获得一个独特的Unit,该Unit不会超过例如20分钟的非活动时间。原因是,我们希望每个潜在用户在演示页面上都有一个干净的状态体验。特别是,我们不希望任何人阅读其他访问者留下的任何东西(例如种族主义)。
这样的事情在Docker / k8s上是可行的吗?
编辑:将这个隐藏在另一个网站后面是没有问题的。la“点击这里开始演示”,然后在导航之前启动一个新的单元。
TLDR:如何为我们的webapp的每个访问者部署一个独特的docker容器。
发布于 2020-05-22 14:45:44
在Docker / k8s中,
是可以做到的吗?
绝对一点儿没错。我认为使用k8s至少有两种方法可以做到这一点。
您可以将这三个容器(前端、后端、数据库)合并到一个Pod中,并为每个用户旋转一个新的pod。一个用户-一个Pod (如果需要,也可以是一组Pod)。这很容易,但可能非常昂贵(如果您有很多用户)。如果以后不再需要Pod,可以将其销毁。
如果您的软件允许您运行对所有用户都相同的前端和后端,那么将“独特”内容移动到数据库中是可能的。例如放入一些表/表集合中。数据存储在数据库中。
您可以定期刷新数据库,以清除用户在测试期间创建的所有资产。
因此,与第一种选择相比,您最终可能会得到更小的“占用空间”。
希望这能有所帮助。
https://stackoverflow.com/questions/61909278
复制相似问题