我有一个将数据保存到 MongoDB 数据库的 Node 应用程序。大部分数据都在手头,例如用于User
收集的数据。但是,应用程序也有集合的概念Website
,对于这个集合,数据必须先从某个地方下载,然后才能保存。
我想知道如何在我的应用程序中分离上述问题。User
在服务层,我有和之类的东西Website
。它们提供基本的 CRUD 操作。在完全相反的一端,有一个用户界面,用户可以在其中输入网站 URL。在这个 UI 和将数据持久化到 MongoDB(服务层)的应用程序之间的某个地方,应用程序必须向这个 URL 发出请求以收集一些数据。获取数据后,Website
服务将持久保存它。
潜在地,一次输入的 URL 可能有数千个,我不想因为负载问题而关闭处理 Web 服务器的 Node 进程。因此,我认为将工作抽象到不同的进程并使用某种消息传递总线将应用程序连接在一起是一个好主意。