我已写下休息的API, 接受一份清单的请求(此清单的大小是动态的) 。
现在,我的API是做什么的, 对于列表中的每个项目, 都叫外部API, 并回应所有回复的收集 。
请参见以下流程图:
我已写下休息的API, 接受一份清单的请求(此清单的大小是动态的) 。
现在,我的API是做什么的, 对于列表中的每个项目, 都叫外部API, 并回应所有回复的收集 。
请参见以下流程图:
为了解决你的问题,我建议 被动的微服务, 即如何开发无阻 同步的REST API 和无同步事件驱动的服务。
Traditionally, as Java developers, we are used to implementing synchronous communication using blocking I/O, for example, a RESTful JSON API over HTTP. Using a blocking I/O means that a thread is allocated from the operating system for the length of the request. If the number of concurrent requests goes up, a server might run out of available threads in the operating system, causing problems ranging from longer response times to crashing servers. Using a microservice architecture typically makes this problem even worse, where typically a chain of cooperating microservices is used to serve a request. The more microservices involved in serving a request, the faster the available threads will be drained.
If a synchronous programming model is preferred, use reactive frameworks that can execute synchronous requests using non-blocking I/O, without allocating a thread while waiting for a response. This will make the microservices easier to scale in order to handle an increased workload.
使用可完成的未来在爪哇同时调用多个REST API, 可以通过不阻拦、不同步的调用来显著改善业绩。
我们假设有4个休息室, 并且那些执行时同步, 每人需要100毫秒才能得到数据, 所以总共4毫秒需要400毫秒才能执行, 所以如果你使用可完成的未来, 那么所有4个API 执行的都是无序的, 而不是400毫秒, 你可以在100毫秒内得到响应。
使用可满足的未来, 我们可以利用可满足的未来, 将未来融合在一起。 等待所有未来完成, 然后处理结果 。
CompletableFuture<Void> allFutures = CompletableFuture.allOf(api1, api2, api3);
Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...
Check this, List<String> list = new ArrayList<String>(); for (int i = 0; i < 10000; i++) { String value = (""+UUID.randomUUID().getLeastSignificantBits()).substring(3, ...
I am in the middle of solving a problem where I think it s best suited for a decorator and a state pattern. The high level setting is something like a sandwich maker and dispenser, where I have a set ...
I have been trying to execute a MS SQL Server stored procedure via JDBC today and have been unsuccessful thus far. The stored procedure has 1 input and 1 output parameter. With every combination I ...
I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...
If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...
I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....
I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...