Code Monkey home page Code Monkey logo

Comments (12)

onewe avatar onewe commented on September 14, 2024 1

目前活跃的开发者不多, 所以进度比较缓慢. 感谢理解.

from dubbo-rust.

fengnex avatar fengnex commented on September 14, 2024

直接在github上下载的dubbo-rust-main目录下执行cargo build可以解决上面的问题。但问题是在dubbo-rust-main之外新建的项目,怎么通过才能对proto文件生产源码?这里主要是dubbo-build这个工具看起来没有起作用或无法自动运行----这个才是是上面的问题。

from dubbo-rust.

fengnex avatar fengnex commented on September 14, 2024

基于dubbo-rust-main在一台机器上运行greeter示例的服务端和客户端,nacos在本地以standalone模式运行,但是client遇到了下面的错误,二者还是不能正常通信,请教怎么解决:
INFO dubbo::triple::transport::connector::http_connector:84: host is ip address: "0.0.0.0" thread 'main' panicked at dubbo\src\triple\transport\connection.rs:104:50: called Result::unwrap()on anErrvalue: hyper::Error(Connect, Os { code: 10049, kind: AddrNotAvailable, message: " 在其上下文中,该请求的地址无效。" }) note: run withRUST_BACKTRACE=1 environment variable to display a backtrace

from dubbo-rust.

onewe avatar onewe commented on September 14, 2024

目前 还在完善中, 不好意思😬

from dubbo-rust.

fengnex avatar fengnex commented on September 14, 2024

理解,期待早日迈向成熟,更新相关文档。
这个示例现在必须要有nacos才能启动,但启动nacos后还是有问题,很遗憾。
看来目前nacos还是应以java、go版本为主。

from dubbo-rust.

fengnex avatar fengnex commented on September 14, 2024

看了一部分代码,能发展到现在必须说已经挺好了!
相信这个项目一定会越来越好!
因为rust的优点和dubbo3的一些良好特性,这个项目一定会前景广阔的!

from dubbo-rust.

yang20150702 avatar yang20150702 commented on September 14, 2024

@fengnex
example下的 echo 例子是可以正常运行,该example没有使用服务发现。你可以试一下这个例子
对于nacos的报错,我们需要本地复现一下

from dubbo-rust.

yang20150702 avatar yang20150702 commented on September 14, 2024

直接在github上下载的dubbo-rust-main目录下执行cargo build可以解决上面的问题。但问题是在dubbo-rust-main之外新建的项目,怎么通过才能对proto文件生产源码?这里主要是dubbo-build这个工具看起来没有起作用或无法自动运行----这个才是是上面的问题。

建议您先熟悉一下 echo 例子。可以直接clone源代码,在本地运行example。
对于您的问题,我简单介绍一下使用dubbo-rust进行rpc服务开发流程:

  1. cargo new echo:创建 cargo package
  2. 新增目录 protos,添加定义好的proto文件
  3. 在包的根目录下,新增 build.rs,用来compile proto文件来生成对应的rust代码。注意:需要预先在本地安装 protoc
  4. 我们在echo和greeter中提供了两种方案来use proto对应的rust代码,具体可以看代码
  5. 先实现Server,然后实现Client

参考:
https://doc.rust-lang.org/cargo/reference/build-scripts.html : build.rs文件会优先执行
https://github.com/protocolbuffers/protobuf#protobuf-compiler-installation

from dubbo-rust.

fengnex avatar fengnex commented on September 14, 2024

@yang20150702 现在版本的greeter示例已经能正常编译了,需要用到nacos,greeter服务也能注册到nacos,但是greeter-client不能与greeter-server通信,错误信息是:
dubbo::triple::transport::connector::http_connector:84: host is ip address: "0.0.0.0"
thread 'main' panicked at dubbo\src\triple\transport\connection.rs:104:50:
called Result::unwrap() on an Err value: hyper::Error(Connect, Os { code: 10049, kind: AddrNotAvailable, message: " 在其上下文中,该请求的地址无效。" })
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
不是你说的那些。

from dubbo-rust.

onewe avatar onewe commented on September 14, 2024

我直接在项目中运行 greeter 好像没有复现您说的问题,
image
给我们一点时间, 我们正在完善, 抱歉.

from dubbo-rust.

fengnex avatar fengnex commented on September 14, 2024

echo这个示例写的挺好的,验证通过。但是在Windows10上验证echo-tls时,echo-tls-server.exe和echo-tls-client.exe都能编译出来,把server.crt和ca.crt都添加到系统信任根证书中,echo-tls-server.exe提示server starting. addr: 127.0.0.1:8889,看起来运行正常,但是运行echo-tls-client.exe时报下面的错,请教该怎么解决:
RoutesFutureInnerState::Future
' panicked at dubbo\src\registry\registry.rs:78:63:
called Option::unwrap() on a None value
registry extension load failed.

from dubbo-rust.

fengnex avatar fengnex commented on September 14, 2024

@onewe 刚才重试了下,greeter示例能编译成功,服务端看起来能正常运行,但是运行客户端时报下面的错误,二者还是不能正常通信:
INFO dubbo::triple::transport::connector::http_connector:84: host is ip address: "0.0.0.0"
thread 'main' panicked at dubbo\src\triple\transport\connection.rs:104:50:
called Result::unwrap() on an Err value: hyper::Error(Connect, Os { code: 10049, kind: AddrNotAvailable, message: "在其上下文中,该请求的地址 无效。" })
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
这个错误跟上一次的一样,而且二者的编译、运行环境不同,2个环境应该可以证明这个问题了。

from dubbo-rust.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.