当前位置: 首页 > news >正文

iis 5 新建网站深圳市建设局网站

iis 5 新建网站,深圳市建设局网站,在家做平面设计在哪接单,网站开发和app开发的区别react api服务通常可以通过异步处理进行优化#xff0c;即使不改变其对外界的行为。 某些服务效率不高的原因是#xff0c;它们需要等待其他服务提供结果才能继续下去。 让我们看一下如何在不等待外部REST服务的情况下调用它们#xff0c;并独立进行多个并行调用#xff… react api 服务通常可以通过异步处理进行优化即使不改变其对外界的行为。 某些服务效率不高的原因是它们需要等待其他服务提供结果才能继续下去。 让我们看一下如何在不等待外部REST服务的情况下调用它们并独立进行多个并行调用然后将其结果与Java EE 8中的响应管道结合起来。 如果我们的服务调用了多个微服务并等待每个调用完成并返回结果然后再执行另一个调用那么使用响应式API进行重构是一个不错的选择。 为了提高服务效率如果它们彼此不依赖则可以并行执行对外部服务的所有调用。 这将减少等待所花费的时间从而加快微服务的速度。 为了并行调用REST服务我们将在JAX-RS中使用新的React式客户端API。 我们将其与RxJava库结合起来以在可用时结合其结果。 这种结合将使我们能够编写简洁高效的代码。 另一个好处是可以释放当前线程以进行进一步处理同时等待远程调用的结果。 我们将建立一个管道在结果到达时对其进行处理最后将其合并为单个响应。 管道的第一部分将调用每个远程服务。 除了等待结果以外我们将指定处理每个收到的结果并继续调用其他服务。 在JAX-RS客户端请求构建器上使用rx方法可以使我们调用get()方法的版本该版本将立即返回而不是等待结果。 为了处理结果到达时的结果我们可以将方法处理程序链接到从get()方法的rx版本返回的CompletionStage上 CompletionStage stage temperatureServiceTarget.request().rx().get(Temperature.class).thenApply(temperature - new Forecast(temperature)); 上面的代码将调用温度服务然后注册一个lambda表达式以在到达温度时对其进行处理。 这会将温度映射到预测对象稍后可以使用stage变量进行访问。 但是我们希望使用的另一种变体get()方法连同RxJava可流动祈求从泽西岛项目获得Flowable的RxJava而不是CompletionStage 。 与CompletionStage相比 Flowable接口可以更轻松地将多个异步结果与更简单的代码组合在一起并且效率更高。 使用以下代码我们将调用外部服务并返回Flowable Flowable flowable temperatureServiceTarget.register(RxFlowableInvokerProvider.class).request().rx(RxFlowableInvoker.class).get(Temperature.class).map(temperature - new Forecast(temperature); 我们注册了其他RxFlowableInvokerProvider 它允许以后请求RxFlowableInvoker 。 此调用然后给了我们Flowable从RxJava返回类型。 这些类不在JAX-RS API中我们必须将它们与Jersey RxJava2库一起添加 dependencygroupIdorg.glassfish.jersey.ext.rx/groupIdartifactIdjersey-rx-client-rxjava2/artifactIdversion2.26/version /dependency 乍一看我们似乎在做同一件事的同时使代码变得更加复杂。 但是 Flowable实例使我们能够轻松组合多个调用 Flowable.concat(flowable1, flowable2).doOnNext(forecast - {forecasts.add(forecast);}).doOnComplete(() - {asyncResponse.resume(Response.ok(forecasts).build());}).doOnError(asyncResponse::resume).subscribe(); } 对于从任何流通量收到的每个预测我们将其添加到预测列表中。 最后我们发送预测列表作为响应或发送错误响应。 要注册侦听器必须对subscribe()最后一次调用否则将忽略它们。 您可能还已经注意到asyncResponse变量用于发送最终响应或发出错误信号。 这是一个JAX-RS异步响应实例用于在数据可用时在以后的时间完成REST响应而不会阻塞初始处理线程。 使用异步响应有助于在等待外部REST服务的结果时节省线程资源。 为了在REST端点中打开异步处理我们将注入javax.ws.rs.container.AsyncResponse作为REST方法参数以及Suspended批注。 我们还将返回类型更改为void因为我们将使用AsyncResponse实例构建响应 GET Produces(MediaType.APPLICATION_JSON) public void getForecasts(Suspended AsyncResponse asyncResponse) {...here come some asynchronous calls to REST services...asyncResponse.resume(...) }最终代码示例 以下代码将 在getForecasts方法中打开REST请求的异步处理 在异步响应上设置5分钟超时 对伦敦和北京执行两次温度服务而无需等待结果 将结果合并为一系列预测 将序列中的每个预测添加到列表中 处理完所有结果后发送完整列表 发生异常时发送错误结果 使用subscribe方法注册处理程序 private Flowable getTemperature(String location) {return temperatureTarget.register(RxFlowableInvokerProvider.class).resolveTemplate(city, location).request().rx(RxFlowableInvoker.class).get(Temperature.class).map(temperature - new Forecast(location, temperature)); }GET Produces(MediaType.APPLICATION_JSON) public void getForecasts(Suspended AsyncResponse asyncResponse) {List forecasts new ArrayList();asyncResponse.setTimeout(5, TimeUnit.MINUTES);Flowable.concat(getTemperature(London), getTemperature(Beijing)).doOnNext(forecast - {forecasts.add(forecast);}).doOnComplete(() - {asyncResponse.resume(Response.ok(forecasts).build());}).doOnError(asyncResponse::resume).subscribe(); }翻译自: https://www.javacodegeeks.com/2018/06/speed-services-reactive-api.htmlreact api
http://www.pierceye.com/news/167328/

相关文章:

  • 设计师服务平台鱼巴士有哪些网站阜宁网站设计
  • 企业网站开发所需要的模块郴州网警
  • 案例网站网页设计实训报告结束语
  • 重庆网上房地产网站龙岩属于哪里
  • 高水平的番禺网站建设在天猫开店需要什么条件与费用
  • 给网站加个地图的代码wordpress 视频预览
  • 邯郸去哪做网站改版短网址生成器在线
  • 广州手机模板建站互联网公司薪资待遇
  • 网站建设的作用有哪些方面wordpress 首页描述
  • 汕头龙湖网站建设做网站用什么团建
  • 网站建站的技术解决方案高唐网站开发
  • dz网站收款即时到账怎么做的礼县建设局网站
  • 专业做轮胎的网站女同wordpress
  • 宁波公司网站首页优化商城网站前期seo应该怎么做
  • ui设计网站用red5做直播网站
  • 网站开发问题论文王老吉网站建设水平优点
  • 平安银行官方网站制作网站步骤
  • 做个网站好还是做淘宝好宁波网站制作好公司
  • 开发网站需要怎么做嘉兴快速建站合作
  • 阿里云建站后台建站网站降权怎么恢复
  • 天津河西做网站公司怎么设置网站的关键字
  • 做网站会提供源代码吗朝阳网站制作设计
  • 企业做网站找谁有什么建筑网站
  • 自己做的网站显示iis7游戏网站怎么建设
  • 淘宝联盟怎么做自已的网站什么叫利用网站做蜘蛛池
  • 做网站要多少带宽镇江网站建设联系思创
  • 唐朝网站的地址软件设计师报考条件
  • seo网站建设刘贺稳营销专家a西宁市网站建设多少钱
  • 上海哪家公司做网站最好网站建设服务合同 付款方式
  • 做网站需要源码吗软件代理商招募