问题标签 [rusoto]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
multithreading - 使用 rusoto 的 rust AWS 分段上传,多线程(人造丝)在“没有反应堆运行......”时惊慌失措
我正在尝试将文件上传到aws
in rust
,因为我正在使用 s3 rust 客户端,当这些部分是从单个rusoto_s3
线程发送时,我设法让多部分上传代码工作,但是,这不是我想要的,我想上传大文件,我希望能够在多个线程中发送这些部分,为此,我做了一点谷歌搜索,我遇到了rayon。
有关信息,分段上传的工作方式如下:
- 启动多部分 -> aws 将返回一个 ID
- 使用这个ID发送不同的part,传递文件chunk,part number -> aws会返回一个
Etag
- 发送所有部分后,发送一个完整的上传请求,其中包含所有已完成的部分,因为数组包含
Etag
和 部分编号。
我是 rust 新手,来自 C++ 和 Java 背景,这是我的代码:
这是我得到的输出和错误示例:
我用谷歌搜索了这个错误,但我并不清楚它的实际含义:
这是我发现的: another question with the same error
这似乎是一些兼容性问题,因为 s3 可能使用的某些版本tokio
与我拥有的 tokio 版本不兼容。
以下是一些相关的依赖项:
我认为主要问题在于实际上想要在线程中运行async
代码。rayon
我尝试async
使用 将我的代码更改为阻塞代码executor::block_on
,我还花了一些时间试图让编译器满意,我有多个线程都想写入,let completed_parts = Arc::new(Mutex::new(vec![]));
所以我在这里做了一些克隆以使编译器满意。
另外,如果我用过的craes很重要,那么它们是:
生锈的新手,所以有很多移动部件可以让这个正确!
amazon-web-services - Rust:使用 Rusoto(或类似的)AWS lambda 获取 POST 数据?
称我为愚蠢,但是您到底如何使用像 Rusoto 之类的 AWS Lambda 框架(或类似的框架,如果更容易的话)从 HTTP(S)请求中获取 POST 字段?
Lambdas 应该回答 HTTP 请求等,是吗?