nodejs連接dubbo服務(wù)的java工程實(shí)現(xiàn)示例
前言
最近公司整體服務(wù)架構(gòu)從MQ遷移到dubbo上,公司有部分項(xiàng)目使用了nodejs服務(wù),故研究了下nodejs的dubbo客戶端,以下使用node-zookeeper-dubbo客戶端為網(wǎng)友提供,因node-zookeeper-dubbo本身項(xiàng)目使用的實(shí)例描述并不完備,對于非node專業(yè)來說,跑一個(gè)實(shí)例還是有點(diǎn)困難,在博主實(shí)踐過程中,也遇到很多問題,固有此文,希望可以給同樣需求的你一點(diǎn)幫助
開源地為:https://github.com/p412726700/node-zookeeper-dubbo
1.啟動(dòng)dubbo提供服務(wù)
本實(shí)例使用dubbo項(xiàng)目本身的DEMO工程提供服務(wù)
2.新建node測試文件nodeTest.js
代碼如下
const nzd=require('node-zookeeper-dubbo'); const app=require('express')(); const opt={ application:{name:'klnode'}, register:'127.0.0.1:2181',//注冊中心地址 dubboVer:'2.5.3',//dubbo版本信息 root:'dubbo',//dubbo協(xié)議 dependencies:{ Demo:{ interface:'com.alibaba.dubbo.demo.DemoService', timeout:6000, methodSignature: { sayHello : (name) => (java) => [ java.String(name) ], } }, } } opt.java = require('js-to-java') const Dubbo=new nzd(opt); app.get('/DemoService/sayHello',(req,res)=>{ Dubbo.Demo.sayHello(10000) .then(data=>res.send(data)) .catch(err=>res.send(err)) }) app.listen(9090)
3.下載所需依賴
進(jìn)入nodeTest.js文件夾下
npm install node-zookeeper-dubbo
npm install express
npm install js-to-java
4.啟動(dòng)服務(wù)
node nodeTest.js啟動(dòng)服務(wù)后,控制臺會(huì)打印Dubbo service init done:,代表啟動(dòng)node服務(wù)成功了
然后訪問http://localhost:9090/DemoService/sayHello,看到如下結(jié)果,代表node連接dubbo服務(wù)成功
以上就是nodejs連接dubbo服務(wù)的java工程實(shí)現(xiàn)示例的詳細(xì)內(nèi)容,更多關(guān)于java工程nodejs連接dubbo服務(wù)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Spring?Security?過濾器注冊脈絡(luò)梳理
這篇文章主要介紹了Spring?Security過濾器注冊脈絡(luò)梳理,Spring?Security在Servlet的過濾鏈中注冊了一個(gè)過濾器FilterChainProxy,它會(huì)把請求代理到Spring?Security自己維護(hù)的多個(gè)過濾鏈,每個(gè)過濾鏈會(huì)匹配一些URL,如果匹配則執(zhí)行對應(yīng)的過濾器2022-08-08解決Eclipse中java文件的圖標(biāo)變成空心J的問題
這篇文章主要介紹了解決Eclipse中java文件的圖標(biāo)變成空心J的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01springboot2如何禁用自帶tomcat的session功能
這篇文章主要介紹了springboot2如何禁用自帶tomcat的session功能,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11詳解Java如何優(yōu)雅的實(shí)現(xiàn)字典翻譯
當(dāng)我們在Java應(yīng)用程序中需要對字典屬性進(jìn)行轉(zhuǎn)換返回給前端時(shí),如何簡單、方便、并且優(yōu)雅的處理是一個(gè)重要問題。在本文中,我們將介紹如何使用Java中的序列化機(jī)制來優(yōu)雅地實(shí)現(xiàn)字典值的翻譯,從而簡化開發(fā)2023-04-04java實(shí)時(shí)監(jiān)控文件行尾內(nèi)容的實(shí)現(xiàn)
這篇文章主要介紹了java實(shí)時(shí)監(jiān)控文件行尾內(nèi)容的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02springboot項(xiàng)目實(shí)現(xiàn)多數(shù)據(jù)源配置使用dynamic-datasource-spring-boot-starter
這篇文章主要介紹了springboot項(xiàng)目實(shí)現(xiàn)多數(shù)據(jù)源配置使用dynamic-datasource-spring-boot-starter,本文分步驟結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-06-06