日韩性视频-久久久蜜桃-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~...的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 亚洲第一视频在线观看 | 欧美xxxxxxxxx | 精品国产二区三区 | 国精产品99永久一区一区 | 久久国产情侣 | 涩久久| 九九热这里只有精品6 | 日本在线第一页 | 日日爽夜夜 | 久热热 | 伊人网久久久 | 天天爽天天做 | 四虎影视永久免费 | 57pao国产成永久免费视频 | 国产精品久久久久久亚洲 | 亚洲精品小视频在线观看 | 一区二区三区在线播放 | 青娱乐在线免费观看 | 日韩一区二区在线免费观看 | 中文字幕日产av | 免费成人深夜 | 伊人久艹 | 色综合网站| 91久久久久久久久久久久久 | 久久色资源网 | 国产h片在线观看 | 日韩天堂在线 | 少妇的性事hd | 男生操女生在线观看 | 欧美成人高清视频 | 天天综合网久久 | 狠狠澡 | 天堂bt在线 | 91视频大全 | av鲁丝一区鲁丝二区鲁丝三区 | 国产特级黄色片 | 国产对白羞辱绿帽vk | 日韩夫妻性生活 | 91gao| 国产精品二区一区二区aⅴ 一卡二卡三卡在线观看 | 黄色国产免费 | 欧美黄色免费网站 | 男女啪动最猛动态图 | 日韩中文字 | 国产自产在线视频 | 欧美区二区三区 | 九九在线免费视频 | 欧美片在线观看 | 国产一区视频免费观看 | 日韩欧美中文在线观看 | 日韩在线视屏 | 午夜一区在线 | 精品中文字幕在线播放 | 欧美男人操女人 | 91精品国产乱码久久久久久久久 | 亚洲另类图区 | 欧美一性一交 | 色多多视频在线观看 | 国产成人综合欧美精品久久 | 久久久精品91 | 日本欧美视频 | 夜夜操国产 | 97久久人人超碰caoprom欧美 | 五月天男人天堂 | 巨物撞击尤物少妇呻吟 | 免费观看日韩av | 69re视频 | 欧美精品一区二区在线观看 | 天堂在线视频tv | 国产精品69毛片高清亚洲 | 日本精品在线观看 | 男朋友是消防员第一季 | 99re这里只有精品66 | 日本一区二区在线看 | 成人福利在线免费观看 | 国产精彩视频一区二区 | 久久亚洲天堂网 | 精品人人人人 | 91日韩精品 | 国产黄色一级片 | 黄色网页在线播放 | 久草免费新视频 | 日日射视频 | 欧美12--15处交性娇小 | 波多野吉衣久久 | 国产精品宾馆在线 | 国产清纯在线 | 动漫av网 | 成年人午夜 | 免费91视频| 国产按摩一区二区三区 | 国产在线观看 | 亚州色图欧美色图| 99在线国产| 亚洲精品视频在线观看免费 | xxx国产| 性开放网站 | 99精品久久 | 在线碰 |