上一篇,讲了RabbitMQ的具体用法,可以看看这篇文章:RabbitMQ学习系列(三): C# 如何使用 RabbitMQ。今天说些理论的东西,Exchange 的几种模式。 AMQP协议中的核心思想就是生产者和消费者隔离,生产者从不直接将消息发送给队列。生产者通常不知道是否一个消息会被发送到队列 ...
分类:
其他好文 时间:
2020-05-09 17:12:38
阅读次数:
76
第一种方法 总结 :代码比较冗余,重试try的次数越多,代码行数越多,但是打印日志比较方便 第二种方法 总结 :遍历代码明显比第一个简化了很多,打印日志也方便 第三种方法 总结 :迭代 显得比较高大上,中间处理代码时有其它错误照样可以进行重试; 缺点 不太好理解,容易出错,另外try包含的内容过多时 ...
分类:
编程语言 时间:
2020-05-09 01:14:35
阅读次数:
292
location配置 ` location ~ ^/v1/(reward|exchange)/ { set $channel_name $cookie_channel_name; secure_link $arg_sign,$arg_et; secure_link_md5 "$uri $arg_ve ...
分类:
Web程序 时间:
2020-05-08 13:04:56
阅读次数:
125
背景 因为想知道java中的关键字,对应的操作系统级别的api是啥,本来打算整理几个我知道的出来,但是,尴尬的是,我发现java里最重要的synchronized关键字,我就不知道它对应的api是什么。 redis中如何获取锁 在redis源码里,线程如果要进入一个同步区(只能单线程进入的代码块), ...
Github下载源码地址https://github.com/square/okhttp 我们今天来看看拦截器里的CallServerInterceptor 来看CallServerInterceptor类的intercept方法 1)源码: Exchange exchange = realChai ...
分类:
Web程序 时间:
2020-04-30 18:57:40
阅读次数:
82
/***关于冒泡排序,从性能最低版本实现到性能最优版本实现*/public class BubbleSortDemo { public static void sort(int array[]) { for (int i = 0; i < array.length - 1; i++) { //通过前 ...
分类:
编程语言 时间:
2020-04-30 13:32:22
阅读次数:
63
@Component @Configuration public class GateWayFilter implements GlobalFilter, Ordered { @Override public Mono<Void> filter(ServerWebExchange exchange, ...
分类:
其他好文 时间:
2020-04-28 14:41:43
阅读次数:
69
相信现在很多的公司自动化测试重点都在接口层,因为接口测试更加接近代码底层,相对于UI自动化,接口自动化有着开发更快、覆盖更全、回报率高等优点。 接口自动化代码实现不难,本质上就是代码模拟发送请求,然后判断返回结果是否符合预期即可。目前也有很多成熟开源的可以发送http请求的库,比如python的re ...
分类:
编程语言 时间:
2020-04-26 13:52:51
阅读次数:
87
本文基于如何去控制并发流程方面做详细介绍,主要介绍相关观念和控制手段。后续详细介绍各种控制手段的用法、实例及代码分析。 概述 有了控制并发流程,可以更好的去协调各个线程之间的工作,涉及各个线程之间的合作策略。 Semaphore:信号量 我们可以理解为:访问系统时,只有有限的凭证,只有拿到凭证之后才 ...
分类:
其他好文 时间:
2020-04-24 15:57:48
阅读次数:
68
路由Routing 这篇主要较上一篇新增一个功能 只接收订阅消息的一个字集。eg.只把严重的错误日志信息写入日志文件(存储到磁盘),但同时仍然讲所有日志信息输出到控制台中。 简单说来就是routing_key决定某一条交付给交换机exchange传给哪个队列,可以将多个routing_key设定给一 ...
分类:
编程语言 时间:
2020-04-22 22:43:03
阅读次数:
85