Stacker是我们针对微前端的组合和编排服务器。除其他事项外,它还提供:
服务事件,使服务能够在多个级别上与其他服务交互,同时保持服务的解耦。
当被访问时,Stacker会将堆栈文件中列出的多个网页片段合并到单个页面中,而不必等待所有片段,然后再将某些内容传递给浏览器。结果是一个网页,虽然外观和行为都像单个网页一样,但却由多个小型服务交付。
在某些方面,Stacker是一个服务器端浏览器,它收集向浏览器显示网页所需的所有信息。
请注意,所有服务响应都会被推送到前端。单个服务的加载时间不会减慢完成页面的速度,服务故障也不会破坏整个页面。
如您所见,Stacker是围绕一个简单的想法构建的。在此基础上,我们为服务添加了新的交互模型和集成模式。但这些都是稍后会在…上分享的故事。
Stacker是用Elixir编写的,它为我们提供了对WebSockets的无障碍支持,我们使用这些WebSockets将更改推送到客户端,并无痛苦地并行处理请求。灵丹妙药和BEAM非常适合Stacker:强大的并行处理能力、充满活力的社区和久经考验的技术的稳定性,这些都是您在构建用作软件主干的东西时所需要的。
到目前为止,我们在我们的生产系统中使用Stacker大约有一年了。它为我们提供了很好的服务,使我们能够简单地通过组合小型的、独立的服务来混合和匹配容器,并为同事创建工作场所。我们觉得现在是时候与公众分享,希望有些人会觉得有趣和有帮助。
目前,我们正在准备发布-如果您对Stacker感兴趣,请让我们知道!这可能会大大加快速度,🙂