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

企业微信功能详细介绍seo外包多少钱

企业微信功能详细介绍,seo外包多少钱,国外 家具 网站模板下载,品牌建设架构新增操作 失败后重试在我从事的每个项目中#xff0c;始终需要某些功能#xff1a;重试操作。 通常#xff0c;这是关于通过网络的呼叫#xff0c;该呼叫可能一次失败#xff0c;但随后会成功。 它可能涉及许多其他内容#xff0c;主要包括与另一个系统的通信#xff08… 新增操作 失败后重试 在我从事的每个项目中始终需要某些功能重试操作。 通常这是关于通过网络的呼叫该呼叫可能一次失败但随后会成功。 它可能涉及许多其他内容主要包括与另一个系统的通信无论是否通过网络。 它的功能你绝对需要在大多数应用中特别是如果你想他们是高可用性 如这里指出的 例如。 每次我必须在项目中引入此功能时我都会检查我们已导入的标准库没有这样的东西。 因此我总是最终将我以前的项目中的同一段代码复制粘贴。 我什至不记得我是什么时候第一次介绍它的但是从那以后我就在“旅行”。 所以这里是 /*** Class that provides retrying functionality. Example:* p/p* code* CallableString callable new CallableString() {..};* String result RetryableOperation.create(callable).retry(5, IOException.class);* /code** param T the return type of the operation*/ public class RetryableOperationT {private CallableT callable;private Runnable runnable;private boolean exponentialBackoff;private int backoffInterval 500;/*** Create a retryable operation based on a Callable instance. The return* type of retry(..) is the type parameter of the Callable instance.** param callable* return* a new instance of RetryableOperation*/public static T RetryableOperationT create(CallableT callable) {return new RetryableOperationT().withCallable(callable);}/*** Creates a retryable operation based on a Runnable instance. In this case* the retry(..) method always returns null.** param runnable* return* a new instance of RetryableOperation*/public static RetryableOperation? create(Runnable runnable) {return new RetryableOperationObject().withRunnable(runnable);}/*** Retries the operation. Retrying happens regardless of the exception thrown.** param retries* number of retries before the exception is thrown to the caller* param exceptions* the operation will be retried only if the exception that occurs is one of the* exceptions passed in this array* return* the result of the operation (null if Runnable is used instead of Callable)* throws Exception* the exception that occurred on the last attempt*/public T retry(int retries, Class? extends Exception... exceptions) throws Exception {if (callable null runnable null) {throw new IllegalStateException(Either runnable or callable must be set);}SetClass? extends Exception retryFor new HashSetClass? extends Exception();retryFor.addAll(Arrays.asList(exceptions));for (int i 0; i retries; i) {try {if (exponentialBackoff i 0) {int sleepTime (int) ((Math.pow(2, i) - 1) / 2) * backoffInterval;Thread.sleep(sleepTime);}if (callable ! null) {return callable.call();} else if (runnable ! null) {runnable.run();return null;}} catch (Exception e) {if (retryFor.isEmpty() || retryFor.contains(e.getClass())) {if (i retries - 1) {throw e;}} else {// if the exception is not the expected one, throw it immediatelythrow e;}}}// cant be reached - in case of failure on the last iteration the exception is rethrownreturn null;}private RetryableOperationT withCallable(CallableT callable) {this.callable callable;return this;}private RetryableOperationT withRunnable(Runnable runnable) {this.runnable runnable;return this;}public RetryableOperationT withExponentialBackoff() {this.exponentialBackoff true;return this;} } 1 这很简单但是效果很好。 您可以重试每个失败也可以重试特定的异常您不想重试NullPointerException但是必须配置适当的超时然后重试网络故障 Result result op.retry(3);...Result result op.retry(3, IOException.class); 我什至曾建议番石榴将其包含在内然后再看其他类似的提案但据我所知番石榴或apache commons中都没有这种功能。 而且我不会创建一个新的github项目因为那将需要在maven Central中管理一个条目而对于单个实用程序类来说这是一项很大的工作。 当然还有其他解决方法它们具有更大的API和占用空间- 重试番石榴扩展和最近提取为单独的项目spring-retry 。 它们值得检查并且具有要导入的Maven依赖项。 无论选择什么选项请检查它是否支持匿名功能自Java 8起。 它可能会自动执行但仍会检查。 关键是要通过一个非常简单的API来提供此功能以便您可以避免用户可避免的故障-必须重试几次对外部系统的调用。 翻译自: https://www.javacodegeeks.com/2015/10/retryable-operations.html新增操作 失败后重试
http://www.huolong8.cn/news/24731/

相关文章:

  • 盐城做网站需要多少钱黄骅贴吧房屋租赁信息
  • PHP网站开发案例12源代码临沂网站建设哪家专业
  • 张启亚学做网站wordpress 去掉meta
  • 上海企业网站seo多少钱阳朔到桂林大巴
  • 青海网站建设怎么建设网站被百度收录吗
  • 做医疗网站要几个人广告效果图用什么软件做
  • 无域名建网站网站建设和系统集成
  • lol解说网站源码联合加工网
  • 合肥建设学校官方网站廊坊快速排名优化
  • 网站建设开发技术类型装修装饰网站建设
  • 上海网站建设报价单wordpress 一键登录
  • 网站建设电话着么打两学一做专栏网站
  • 烟台seo网站推广大型购物网站建设方案
  • wordpress多网站建设企业建设官方网站作用及意义
  • 跟网站开发有关的内容正规淘宝店铺交易平台
  • 网站子页怎么做 视频网站开发工具的选择
  • 酒店预订网站开发百度域名续费
  • 买网站名称武昌有专业做网站
  • 成都信用体系建设网站做网站最有名的公司
  • 企业网站代维护php装修公司网站源码
  • 大学学风建设专题网站wordpress输出友情链接
  • 企业网站本身应该就是企业( )的一部分ico项目网站建设
  • 网站建设与管理常用网站建设海之睿
  • 织梦网站如何生成伪静态企业定制
  • 视频网站调用ie域名
  • 上海工商查询网官方网站卡一卡二卡四卡视频免费观看
  • 自己做项目的网站登录域名管理网站
  • 南阳网站制作价格网站开发形成收入怎么做帐
  • 大连网站开发费多少钱昌平沙河网站建设
  • 东单网站建设网页设计网站开发需要哪些知识