首页 >事件 > > 正文

世界热点!Hystrix请求合并的使用(二)

腾讯云 2023-04-13 11:45:41


(资料图片仅供参考)

步骤4:创建Hystrix请求合并器执行器

接下来,我们将创建一个名为“GetDataCollapserExecutor”的类,该类用于执行Hystrix请求合并器:

@Servicepublic class GetDataCollapserExecutor {    private final ExternalService externalService;    @Autowired    public GetDataCollapserExecutor(ExternalService externalService) {        this.externalService = externalService;    }    @HystrixCollapser(batchMethod = "execute",            collapserProperties = {                    @HystrixProperty(name = "timerDelayInMilliseconds", value = "100")            })    public Future> getData(String key) {        GetDataCollapser getDataCollapser = new GetDataCollapser(externalService, key);        return getDataCollapser.queue();    }    @HystrixCommand    public Map execute(List keys) {        Map resultMap = new HashMap<>();        for (String key : keys) {            GetDataCollapser getDataCollapser = new GetDataCollapser(externalService, key);            resultMap.putAll(getDataCollapser.execute());        }        return resultMap;    }}

如上所述,我们的GetDataCollapserExecutor类包含以下内容:

构造函数:该函数用于注入ExternalService实例。getData()方法:该方法使用@HystrixCollapser注解进行注释,该注解指定了一个名为“execute”的批量执行方法。在此示例中,我们将timerDelayInMilliseconds属性设置为100毫秒,这意味着如果100毫秒内有多个请求,则它们将被合并为单个请求。execute()方法:该方法使用@HystrixCommand注解进行注释,该注解指定了Hystrix请求合并器执行逻辑。在此示例中,我们遍历请求参数列表,并为每个请求创建一个GetDataCollapser实例。最后,我们将所有结果合并到一个HashMap中,并将其返回。

步骤5:测试Hystrix请求合并器

现在,我们可以测试Hystrix请求合并器是否按预期工作。我们将创建一个名为“DataController”的类,并将其用于向客户端公开API:

@RestControllerpublic class DataController {    private final GetDataCollapserExecutor getDataCollapserExecutor;    @Autowired    public DataController(GetDataCollapserExecutor getDataCollapserExecutor) {        this.getDataCollapserExecutor = getDataCollapserExecutor;    }    @GetMapping("/data")    public Map getData(@RequestParam List keys) throws ExecutionException, InterruptedException {        List>> futures = new ArrayList<>();        for (String key : keys) {            futures.add(getDataCollapserExecutor.getData(key));        }        Map resultMap = new HashMap<>();        for (Future> future : futures) {            resultMap.putAll(future.get());        }        return resultMap;    }}

如上所述,我们的DataController类包含以下内容:

构造函数:该函数用于注入GetDataCollapserExecutor实例。getData()方法:该方法使用@GetMapping注解进行注释,该注解指定了API的URL路径和请求方法。在此示例中,我们使用@RequestParam注解将请求参数列表注入方法参数,并使用Future和get()方法来获取Hystrix请求合并器的返回值。

现在,我们可以使用Postman或类似的工具向API发送HTTP请求,并检查是否成功合并了多个请求。例如,我们可以向http://localhost:8080/data发送具有以下查询参数的GET请求:

?keys=key1&keys=key2&keys=key3

这将使用Hystrix请求合并器执行三个请求,并将其结果合并到单个响应中。

步骤6:启动应用程序并测试

现在,我们可以启动应用程序并测试它是否按预期工作。我们可以通过运行以下命令来启动应用程序:

mvn spring-boot:run

应用程序启动后,我们可以使用Postman或类似的工具向API发送HTTP请求,并检查是否已成功使用Hystrix请求合并器合并了多个请求。例如,我们可以向http://localhost:8080/data发送具有以下查询参数的GET请求:

?keys=key1&keys=key2&keys=key3

如果一切正常,我们将看到以下响应:

{    "key1": "Data for key1",    "key2": "Data for key2",    "key3": "Data for key3"}

这表明Hystrix请求合并器已成功执行三个请求并将其结果合并到单个响应中。

上一篇: 下一篇:
x
推荐阅读

世界热点!Hystrix请求合并的使用(二)

2023-04-13

川核灵境|快速搭建数字藏品定制发布解决方案

2023-04-13

环球看点!安徽省庐江县汤池市场监管所强医美行业监管 守护“美丽”消费

2023-04-13

震动资本圈!这位大佬突然失联 A股公司紧急发声 天天观点

2023-04-13

华为“不造车”给谁上了一课 天天热点评

2023-04-13

每日讯息!卢尼打趣:迈克-布朗是我们的对手 我们现在不是朋友?

2023-04-13

解码中国餐饮连锁化

2023-04-13

纵观天下|山东一镇政府回应“城管队员进店连续推搡拉扯女商户”:已反映给相关部门,正在处理

2023-04-13

天天日报丨浊度ntu是什么单位_ntu是什么单位

2023-04-12

常德高新区7家企业入围全国创新积分500强企业

2023-04-12

折叠屏板块股票名单有哪些?(2023/4/12)

2023-04-12

新造型/新配色 仰望U9将亮相上海车展|环球即时

2023-04-12

线上线下同步送岗 这场招聘会人气旺

2023-04-12

热讯:《铁血战士》观后感_电影观后感600字 《童年》读后感_高一

2023-04-12

为这事,“冰雪美人鱼”芭芭拉在南极扎入冰冷的水中

2023-04-12

扣除项目金额是什么意思_扣除项目|环球热门

2023-04-12

司柳之争胜负已分

2023-04-12

平台型材料公司雏形初现,各类半导体材料多点开花

2023-04-12

社科院文学所“跨文化论坛”:汉俳深刻反映中日文化交流

2023-04-12

姜太显是哪个团 姜太显崔杋圭cp是同学吗?_天天时快讯

2023-04-12

激活乡村治理“一池春水” 每日短讯

2023-04-12

多方聚力打造青年人才“强磁场”

2023-04-12

庞京城

2023-04-12

天天要闻:盛京银行召开董事会、监事会 提名董监事候选人

2023-04-12

担心传播不良信息,美政府研究是否监管ChatGPT等AI技术

2023-04-11

本市启动惠企服务月 为企业提供28个服务包58项服务 世界微速讯

2023-04-11

小腿上“种”活的手“长”回右臂上

2023-04-11

【天天快播报】隆扬电子: 关于使用超募资金投资建设项目的公告

2023-04-11

2023年医药高管变动:中药企业扎堆换帅,创新药企更迭密集_环球报道

2023-04-11

国际观察|未雨绸缪应对全球能源市场变化|全球新要闻

2023-04-11

专利和著作权怎么区分的-天天速读

2023-04-11

3月份中国CPI同比上涨0.7% 涨幅为近一年半低点|天天视讯

2023-04-11

谷雨三候指的分别是什么?谷雨是24节气第几个节气?

2023-04-11

恒指午间休盘涨0.07%,恒生科技指数跌0.99%

2023-04-11

订立合同的违约金怎么算

2023-04-11

今日精选:央行今日开展50亿元逆回购操作

2023-04-11

又到“飞絮季” 多措并举来治理

2023-04-11

北京:城市交通调查昨起入户

2023-04-11

云南安宁市二季度开工19个项目,投资额达121.65亿元_最新快讯

2023-04-11

工商企业登记查询_工商企业登记

2023-04-11

当前快看:梦见自己穿高跟鞋是什么意思 女人梦见自己穿高跟鞋是什么意思

2023-04-11

000539粤电力a股涨_000539粤电力

2023-04-11

景颇目脑纵歌_对于景颇目脑纵歌简单介绍

2023-04-10

【世界新视野】五彩绳的编法作文_五彩绳的编法

2023-04-10

单于夜遁逃的读音是什么_单于夜遁逃中的单于是什么意思 信息

2023-04-10

关于去绝对值的练习题_关于去绝对值和根号

2023-04-10

环球观速讯丨英雄之光|每个细节,处处用心!

2023-04-10

家用水泵抽不上水解决办法

2023-04-10

全球微速讯:桑枝膏_关于桑枝膏简述

2023-04-10

聚优惠_聚优汇 播报

2023-04-10

阚宁辉:“三四月间,桃花开时”,我们都是收信人

2023-04-10

2022阿坝州养老保险交多少钱 阿坝州社保缴费标准 天天热闻

2023-04-10

教育科技人才一体推进的生动实践 ——访教育部高等教育司副司长武世兴

2023-04-10

太极股份(002368)2022年年报点评:业绩平稳增长,国产替代和数字化双轮驱动_世界观热点

2023-04-10

菏泽牡丹国际传播论坛丨马励:美人之美、美美与共,牡丹是文化传播美丽桥梁

2023-04-10

高冷?量子科技已悄然应用于这些领域

2023-04-10

这份地产排行榜,暴露了行业真相|天天简讯

2023-04-10

言字旁的字有哪些怎么读_言字旁的字有哪些

2023-04-10

要闻速递:提高情商聊天的方法_提高情商的47种方法

2023-04-10

世界聚焦:双向六车道!白鹅潭大道拟6月底开工

2023-04-09

温宿县:工作队发放化肥暖民心 助力春耕保增收 世界快播

2023-04-09

西班牙资深记者加西亚:菏泽的牡丹令人惊叹 以牡丹“美的语言”传播中国文化非常合适

2023-04-09

世界观热点:影视国度_影视帝国电影下载网站

2023-04-09

暴雪战网遭遇DOSS攻击!多款游戏无法正常登录_天天日报

2023-04-09

新疆吉木乃边防检查站应对寒流天气 确保出入境车辆安全通关 当前热讯

2023-04-09

成龙与马演哭观众 电影《龙马精神》曝“一路相伴”版海报 天天热点评

2023-04-09

天天速读:搞定网

2023-04-09

【全球时快讯】市场收购价高开低走 黑龙江出手“稳”大豆

2023-04-09

太极3巅峰在望在线播放完整版 太极3巅峰在望迅雷下载

2023-04-09

pupil是什么意思英语怎么读_pupil是什么意思

2023-04-08

姐姐过生日送什么礼物-世界看热讯

2023-04-08

中国初中篮球联赛湖南赛区落幕,长沙市第六中学夺冠|当前热文

2023-04-08

吴前当选常规赛最佳第六人 场均17.2分5.9助攻1.8抢断

2023-04-08

全球新资讯:南昌大学的专科叫什么名字_南昌大学专科校区

2023-04-08

【世界快播报】海南2023年上半年高等教育自学考试4月15-16日进行 这些事项要注意

2023-04-08

比斯利:一直在努力度过投篮低迷期 希望今日手感能保持到季后赛|百事通

2023-04-08

加速度2023 | 旅游市场持续回暖背后的创新与信心 环球速读

2023-04-08

合肥2023年小麦赤霉病防控形势严峻 需防面积439.38万亩次-新动态

2023-04-08

中国户外摄影模特大赛_中国户外资料网 每日报道

2023-04-08

期盼一场雨_期盼

2023-04-08

全球关注:咖啡奶泡怎么打

2023-04-08

英国糊涂漆匠连续8次漆错房子,却未被解雇,老板:谁叫他手艺好

2023-04-07

当前速讯:家乐福关店潮,货架角落的这4款酒,客户看不上,员工整箱往家搬

2023-04-07

带锯床、圆锯机的行业应用占比如何?

2023-04-07

自制芝麻酱的小窍门_家庭自制芝麻酱的做法 速递

2023-04-07

张天爱为显瘦拼了!这么紧的裤子也要硬穿进去,光看着都难受!-环球时讯

2023-04-07

中国经济的信心丨新里程健康集团有限公司首席执行官林杨林:在危机中遇新机,在变局中开新局|世界看点

2023-04-07

《哪吒之魔童降世》获“最佳”,中国文化艺术政府奖第四届动漫奖揭晓 天天新资讯

2023-04-07

城发投资发行1.5亿元超短期融资券 利率4.75%

2023-04-07

热文:蛐蛐罐煮几遍能养蛐蛐_蛐蛐怎么养

2023-04-07

《黑龙江省电动车管理条例》5月1日起施行

2023-04-07

观点:女子拒绝公司查手机聊天记录被无偿辞退,专家解读:明显违法

2023-04-07

世界简讯:Faker出道十周年!发文感谢所有人,是因为有粉丝的支持才让自己一直活跃在赛场上!

2023-04-07

世界头条:“老兵之家”温暖回乡之路

2023-04-07

安装和配置Eureka Server

2023-04-07

A股上市银行拟合计派现超5300亿元 14家股息率在5%以上-环球微速讯

2023-04-07

红楼之庶子风流 环球信息

2023-04-07

晦暗的对应词_晦暗

2023-04-07

它在PPT你哎!如果遇到这些情况,建议你连夜逃跑

2023-04-06

【天天报资讯】园林保养合同范本(11篇)

2023-04-06