新足迹

 找回密码
 注册

精华好帖回顾

· 纪念澳洲人最爱戴的第一夫人Margaret Whitlam (更新:前总理Gough Whitlam去世,98岁高龄) (2012-3-18) patrickzhu · 墨尔本租房。 (2005-1-31) coldair
· 巧克力饼干 (2007-10-2) 花生 · 樱花般美丽。。。 (2008-7-31) 阿Ka
Advertisement
Advertisement
查看: 1021|回复: 2

[IT] rust app on amazon aws [复制链接]

发表于 2021-7-26 07:46 |显示全部楼层
此文章由 DDD888 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 DDD888 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 DDD888 于 2021-7-26 06:51 编辑

我写了个简单的rust actix_web服务器程序运行在amazon aws ec2 ubuntu linux,为何运行htop有三行同样的内容啊?到底这个rust应用程序占用了多少内存啊?是138兆,还是138兆x3 谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
Advertisement
Advertisement

发表于 2021-7-26 08:03 |显示全部楼层
此文章由 DDD888 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 DDD888 所有!转贴必须注明作者、出处和本声明,并保持内容完整
这是源程序代码

extern crate dotenv;

extern crate envy;

extern crate serde_derive;
use serde:eserialize;

extern crate actix_web;

use actix_web::{get, App, HttpServer, Responder, HttpRequest};

#[derive(Deserialize, Debug)]
struct RemoteControlConfig {
    server: String,
}


#[get("/ip")]
pub async fn ip(req: HttpRequest) -> impl Responder {
    if let Some(socket_addr) = req.peer_addr() {
        socket_addr.ip().to_string()
    } else {
        String::new()
    }
}

#[actix_web::main]
async fn main() -> std::io::Result<()> {
    dotenv::dotenv().expect("Failed to read .env file");
   
    let config = envy::from_env::<RemoteControlConfig>().expect("Failed to read Config file");
    println!("{:?}", config.server);
    HttpServer::new(||
        App::new()
            .service(ip)
            )
        .bind(config.server)?
        .run()
        .await
}

发表于 2021-7-26 09:57 来自手机 |显示全部楼层
此文章由 aqldu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 aqldu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
没有用过htop,我只用过top。从你的截图看,好像那三个是同一个pid,也就是htop列出的是线程。所以是138兆。这可能跟htop的default选项有关。你可以试一下top,看看是不是变成了一个。top的default选项是只列出进程。

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Advertisement
Advertisement
返回顶部