我必须创建一个REST API(我们称其为W1),这将消耗另一个许可或付费的REST API(W2)。许可使用收费的休息api是每秒150个请求。但是,我们以这种方式创建了余下的Web服务,使其每秒可处理多达500个请求。我们如何实现这一目标。
答案 0 :(得分:0)
编写一种工具来完成一项工作并做好。
您需要获取然后缓存数据,从该缓存中为所有500r / s提供服务,而不是直接通过
因此,将其称为W0是您的数据获取程序-它作为自己的进程运行,等等,并从W2获取数据并将其插入本地缓存数据存储区。基本内容-如果设置为true,则设置时间戳,获取数据,将其插入本地数据缓存,获取时间戳,如果已超过0.5秒,则重复重复,否则请等待几秒钟,然后再次检查时间戳并重复
因此W0正在喂您的数据库,以不超过120个请求/秒的速度提取数据(希望留一些空间以防万一)。 W0仅了解自身,W2和写入数据库接口。
您的W1是您的RESTful API,从W0不断补充和更新的数据缓存中读取数据,并将其提供给您的Web应用程序。 W1对W2一无所知,或需要或关心-它仅与解析客户端请求,对其进行身份验证,对其进行验证,运行数据库查询以及向客户端发送适当的输出有关。
W3-> Wx是基于RESTful API的应用程序。他们对W0,W2或数据存储一无所知-他们只关心W1,即您的API。