我对Restlet相当新,并编写了一小段代码来进行HTTP调用。它正在工作但我想知道如何将HTTP连接池(apache)添加到其中。 我无法找到任何教程或参考代码。
Client client = new Client(Protocol.HTTP);
ChallengeResponse challengeResponse = new ChallengeResponse(
ChallengeScheme.HTTP_AZURE_SHAREDKEY,
acctName,
accKey);
String url = RestHelper.createRequestURI("CCC");
Request request = new Request(Method.GET, url);
request.setChallengeResponse(challengeResponse);
Response response = client.handle(request);
任何参考或帮助将不胜感激。
答案 0 :(得分:0)
实际上,Restlet在客户端连接器级别内部管理池。可以使用客户端的上下文来完成此池的配置。以下示例描述了配置它:
Client client = new Client(new Context(), Protocol.HTTP);
client.getContext().getParameters().add("maxConnectionsPerHost","5");
client.getContext().getParameters().add("maxTotalConnections","5");
您可以注意到这些参数取决于您使用的基础客户端连接器。
以下是一些有用的链接:
请注意,如果您使用ClientResource,则需要共享同一客户端,以便只有一个客户端连接器实例。否则,为每个请求实例化一个新的。请参阅以下实现方法:
Client client = new Client(new Context(), Protocol.HTTP);
ClientResource cr = new ClientResource("http://myurl");
cr.setNext(client);
希望它有所帮助, 亨利