日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

dubbo的端口地址和ip写在那_开源一款超实用的 Dubbo 测试工具,已用半年,感觉很有feel~...

發布時間:2025/3/15 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 dubbo的端口地址和ip写在那_开源一款超实用的 Dubbo 测试工具,已用半年,感觉很有feel~... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

不知道你是否在工作中有遇到過類似情況:

  • dubbo接口調試復雜,需要通過telnet命令或者通過consumer調用來觸發。
  • telnet語句參數格式復雜,每次編寫都要小心謹慎,一旦出錯又需重來。
  • 復雜對象參數傳參調用接口復雜,編寫java api調用接口時間成本較高。


上述這些坑我在工作中都有遇見過,發現大部分耗時都會卡在調用dubbo服務做自測的階段,所以后來花費了寫業余時間寫了一款高效的dubbo測試工具開源給大家使用。

這款工具目前已在實際工作中應用半年多,基本功能已經成熟,后續依舊會進行版本維護。

相關的代碼地址為:

https://gitee.com/IdeaHome_admin/dubbo-proxy-tools

ps: 如果大家喜歡,希望能給出一顆寶貴的star

關于如何部署本工具

下載了gitlab的代碼之后,你會看到有兩個文件包:iubbo-proxy和iubbo-proxy-web,它們分別正好對應了后端代碼和前端代碼。

前端代碼的部署

前端采用非常簡單的vue技術,只需要將文件部署到一臺nginx上邊即可運作。
前端的默認訪問頁面是test-dubbo-web.html。

但是有兩個小點需要改動下js配置

constants.js

這份文件里面編寫了對應的請求server地址,這塊是對應了后端服務的url。


由于請求dubbo接口需要通過zk注冊中心來拉去服務名列表,所以需要在iubbo.x.js里面的commonzk中做配置:


這里的host是一個別稱,相當于一個key用于供前端展示,實際上傳輸給后端的是用ip這個值。

后端代碼的部署

后端工程采用了springboot框架技術,核心的配置放在了application.properties里面:

server.port=7089 application.invoker.name=iubbo-invoker-proxyspring.datasource.druid.password= spring.datasource.druid.username= spring.datasource.druid.url=jdbc:mysql://127.0.0.1:3306/iubbox-proxy spring.datasource.druid.driver-class-name=com.mysql.jdbc.Drivermybatis-plus.configuration.map-underscore-to-camel-case=truespring.redis.port=6379 spring.redis.host= 127.0.0.1

然后倒入建表的sql:

CREATE TABLE `t_dubbo_invoke_req_record` (`id` int(11) NOT NULL AUTO_INCREMENT,`user_id` int(11) DEFAULT NULL COMMENT '用戶id',`arg_json` varchar(2500) COLLATE utf8_bin DEFAULT NULL COMMENT 'dubbo請求參數',`create_time` datetime DEFAULT CURRENT_TIMESTAMP,`update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;CREATE TABLE `t_user` (`id` int(9) NOT NULL AUTO_INCREMENT,`username` varchar(60) COLLATE utf8_bin DEFAULT NULL,`password` varchar(30) COLLATE utf8_bin DEFAULT NULL,`createTime` datetime DEFAULT CURRENT_TIMESTAMP,`updateTime` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
  • t_user 用于記錄相關的用戶賬號,方便于保存用戶賬號信息。
  • t_dubbo_invoke_req_record 用于記錄請求dubbo接口的用例信息。

最后就是啟動入口類org.iubbo.proxy.DubboInvokerApplication

啟動成功截圖

關于本工具的使用教程

本工具區分了已登錄賬號和未登錄賬號兩類角色,已登錄賬號的使用者可以對請求的用例進行保存,方便下一次提取信息,未登錄賬號雖然沒有保存用例的功能,但是不影響其使用本工具進行測試。

首頁截圖:

1.指定zk地址

在測試dubbo接口之前,我們通常都會去拉取一遍zk上邊的service地址,操作如下圖:
先在文本框點擊,輸入和js配置有關的字母或數字會有模糊匹配的選項供各位選擇:


選中了zk地址之后,再去點擊拉取zk地址按鈕(以前有同事剛接觸這個工具的時候,這里被繞蒙了~~)

拉取zk地址的時候,后端會根據文章上邊提到的js配置里面的ip值去拉取,拉取成功會有相關提示:

接下來便是篩選dubbo服務地址的功能,在拉取zk地址下方有一個下拉框,這里面此時應當會被注入zk上所有dubbo服務列表的名稱。


選擇對于的service名稱,然后在右邊的“請輸入名稱”文本框中輸入該接口對應的方法名稱(一定要名稱對應)


這里以調用MsgService的sendMsg方法為例:

然后配置相關的參數和名稱


選擇對應參數類型和值:


最后發起請求:


在基礎參數配置項的旁邊,還有一個模塊是專門配置consumer端的額外內容,這些參數項都是在平時工作中可能會應用到的場景,需要的時候可以進行配置。這里面也配備了工作中非常常用的直連選項。

我個人最喜歡使用的還是直連功能,因為在開發過程中,經常需要直連機器做自測:

假如說希望保存自己曾經發送過的dubbo測試用例,那么你只需先進行登錄賬號,賬號直接往t_user表里面寫入一條數據即可:


在首頁的右上方有個進入登錄頁面按鈕:


點擊登錄

如何保存請求用例:


保存用例這里有些小瑕疵,需要用戶手動刷新下頁面才能顯示保存的用例信息:


點擊選用參數,則頁面又會重新回顯之前使用過的請求信息。

特殊參數請求

該工具支持多種開發中常見的參數格式調用,目前支持常規參數

ps:注意這里的參數格式需要和dubbo方法里面的參數格式按照相同順序相同類型做映射,否則后端程序會返回找不到對應方法

Java的常用基本類型數據:boolean,short,int,long,double,char,float

Java中常用的包裝類數據:

java.lang.String, java.lang.Integer, java.lang.Object, java.util.List, java.lang.Class, java.lang.Long, java.lang.Boolean, java.util.Map, java.util.Date, java.lang.Float, java.lang.Double

對于簡單的數據類型傳遞

多參數,中英文混合傳遞

List類型參數的傳遞

Class類型的參數傳遞

Map類型的參數傳遞

Date類型的參數傳遞

自定義對象參數傳參

如果在實際應用中遇到了這種場景,需要調用以下的接口,那么這個使用就需要使用自定義參數了:

復雜類型自定義參數傳遞

假設遇到了List類型參數,而且傳輸的List里面包含有自定義對象,例如下邊這種類型:

List<UserDTO> testUserDtoList(List<UserDTO> userDTOList,Class clazz);

那么此時的傳參案例可以像下邊這樣來寫:

易錯點歸納

注意請求的參數順序要和方法對應的參數順序一致,假設服務的方法定義如下:

<T> List<T> getList(List<Long> var1, Class<T> var2);

那么傳入的參數就必須先填List參數,再寫Class參數。

  • 正確示例:(先寫了List參數,再寫Class參數)
  • 錯誤示例:(先寫了Class參數,再寫List參數)

作者:Java知音

原文鏈接:https://mp.weixin.qq.com/s/RczGYu9stYZbhUm6ON31pg

總結

以上是生活随笔為你收集整理的dubbo的端口地址和ip写在那_开源一款超实用的 Dubbo 测试工具,已用半年,感觉很有feel~...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: www日本免费 | 国产在线播放91 | 91嫩草影视 | 日本免费色视频 | 97黄色片 | 美女精品在线 | 日韩3区 | 国产区免费观看 | 福利一二三区 | 欧美国产精品一区 | 国产乱大交 | 米奇狠狠干 | 亚洲第一中文字幕 | 日韩精品视频一区二区三区 | 黄色的视频网站 | 狠狠干在线视频 | 亚洲国产黄色av | 久久午夜无码鲁丝片午夜精品 | 成人看片 | 日本xx视频免费观看 | 最新版天堂资源在线 | 亚州国产| 韩日欧美| 91性高潮久久久久久久久 | 草莓视频成人在线 | 老熟女高潮喷水了 | 成人区人妻精品一区二区不卡视频 | 欧美成人国产va精品日本一级 | 日本成人精品视频 | 国内三级在线 | 91传媒在线播放 | 一二三四视频社区在线 | 91亚洲精华 | 东北毛片 | 国产在线1区| 欧美日韩国产在线播放 | av av在线 | 特级一级片 | 浮力影院国产第一页 | 欧美夫妻性生活视频 | 久久久剧场 | 久久青草热 | 96国产在线 | 天天精品 | 亚洲情网| 欧美一区二区三区黄片 | 亚洲av无码电影在线播放 | 亚洲大色| 精品久久一二三区 | 性色av一区二区三区红粉影视 | 久月婷婷 | 成人三级在线看 | 国产一区二区三区免费观看视频 | 国产在线观看一区二区三区 | 亚洲欧美另类在线视频 | 99久久精品一区二区 | 少妇被按摩师摸高潮了 | 亚洲综合丁香 | 黄色网页大全 | 亚洲黄色在线观看视频 | av中文字幕亚洲 | 成人做爰9片免费视频 | 色污网站| 久久综合精品国产二区无码不卡 | 欧美黑人xxx | 亚洲欧美一二三 | 久久久久久中文字幕 | 天天干夜夜玩 | 无套内谢大学处破女www小说 | 国产精品九九 | 毛片天堂 | 看国产毛片 | 欧洲精品久久一区二区 | 能在线观看的av网站 | 日本免费一区二区三区 | 青青草91 | 成人无码久久久久毛片 | 日韩成人av网站 | 91性生活 | 男人天堂免费视频 | 日本成人在线免费观看 | 日本吃奶摸下激烈网站动漫 | 成人在线免费网站 | 国产真人做爰毛片视频直播 | 欧美日韩片 | 99久久精品国产一区色 | 超碰在线免费97 | 日韩中文字幕在线观看视频 | 在线观看国产精品视频 | 欧美又粗又深又猛又爽啪啪九色 | 草草草在线视频 | 国产黄色大片 | 老女人性生活视频 | 午夜av在线播放 | 国产精品视频免费在线观看 | 日本免费视频 | 动漫玉足吸乳羞免费网站玉足 | 久久久久久亚洲精品中文字幕 | 日本xxxxxxxxx|