微服务每分钟处理100个请求

我有node.js应用程序应该处理以下

  1. 获取压缩文件提取这些文件(JS模块文件与一些关键和价值 – 最多20个文件,但通常是5-8个文件为每个请求)
  2. 对这些文件进行一些分析并从中创build新文件并将其发回客户端(如果请求是5个文件,分析应该返回相同的5个新文件等)
  3. 压缩这个新文件并将其发送回客户端

我创build了可以正常工作的分析模块,对于大约10个文件,大约需要250-300毫秒来进行分析并创build新文件。

让我们假设我需要服务100个客户,可以做到这一点

现在我想创build一些stateless微服务,这个function基本上就是这样做的

 get zip extract zip manipulate zip send files 

为此,我想在云中创build一个micro service (无状态)(我想将其部署到应该处理它的云(云代工/ Heroku)而我的问题在于如何处理多个请求?每分钟100的请求…我明白,应该是asynchronous工作,但我仍然恐怕10或更多的要求我的应用程序将粉碎… … –

队列? 缩放?

我明白,应该是asynchronous但仍然工作,恐怕10或更多的要求我的应用程序将被粉碎

 I believe you have a bad idea on what a stateless server is. 

无状态服务器function强大,可扩展且可扩展。 无状态的服务器可以处理的不仅仅是您提到的请求,而是在您的云计费帐户中拥有足够的信用额度之前,不会被压制 – 至less这是我们使用无状态服务器的全部原因

去吧,你的应用程序可以处理任何数量的请求:)

如果您仍然担心,只要尝试分割您的应用程序。 就像 – 让你的一个函数完成提取,一旦完成,就可以请求分析函数来启动它的工作。 您可以使用pub / sub或API端点与不同的无状态服务器通信(只需查看文档)