框架自带 GC 垃圾回收
现在ai时代,直接让ai写业务即可,直接上最强并发的框架。
业务 用 octane
高并发场景,正常来说也不会非常多接口,用 Drogon 完美。
hello.cpp
#include<drogon/drogon.h>using namespace drogon;intmain(){// 数据库连接auto db=app().getDbClient("mysql","127.0.0.1",3306,"你的库名","账号","密码",1,"utf8mb4");// ==========================// 接口1:Hello World// ==========================app().registerHandler("/hello",[](auto req,auto cb){Json::Value r;r["code"]=200;r["msg"]="Hello Drogon 简化版!";cb(HttpResponse::newHttpJsonResponse(r));});// ==========================// 接口2:查询用户 ID=1// ==========================app().registerHandler("/user/getInfo",[db](auto req,auto cb){auto sql="SELECT id,username,phone FROM user WHERE id=?";// ↓↓↓ 这里我给你简化到最干净!db->execSqlAsync(sql,[cb](auto res){Json::Value r;if(res.empty()){r["code"]=404;r["msg"]="用户不存在";}else{r["code"]=200;r["data"]["id"]=res[0]["id"].as<int>();r["data"]["name"]=res[0]["username"].as<string>();}cb(HttpResponse::newHttpJsonResponse(r));},[cb](auto err){Json::Value r;r["code"]=500;r["msg"]="查询失败";cb(HttpResponse::newHttpJsonResponse(r));},1);});app().addListener("0.0.0.0",8081).run();return0;}