首页 > 编程语言 >WEB实战手册-基于C++(1)

WEB实战手册-基于C++(1)

时间:2023-08-11 18:55:39浏览次数:42  
标签:WEB OFF ++ C++ 手册 OATPP install oatpp

目录

oat++

oat++ 是一个轻量级高性能 Web 服务开发框架,采用纯 C++ 编写而成。

  • 特性:
  1. 特性快速
    
  2. 零依赖
    
  3. 异步服务器,高性能,在单个服务器上同时处理超过 500 万个 WebSocket 连接
    
  4. 多线程服务器(简单的 API)
    
  5. 连接无感知,可以使用任何传输类型,无论是 SSL 后端、套接字、管道还是文件,它只关心 HTTP 流
    
  6. REST 框架,并可自动生成文档:oatpp-swagger
    
  7. 类 Retrofit 客户端 wrapper
    
  8. 对象映射,快速对象序列化与反序列化,目前是 JSON,很快会支持更多格式
    
  9. 简单的依赖注入框架
    
  10. 简单的测试框架
    
  • 支持平台:

以下面两个平台为主:
Unix/Linux
Windows

  • 编译

需要以下软件包

  1. Git
    
  2. C++ compiler supporting C++ version >= 11.
    
  3. Make
    
  4. CMake version >= 3.1
    
$ yum install git
$ yum install cmake
$ yum install gcc gcc-c++ make
$ yum install libatomic

从源码安装

$ git clone https://github.com/oatpp/oatpp.git
$ cd oatpp/

$ mkdir build && cd build

$ cmake ..
$ make install

编译选项

选项                                  默认     描述
CMAKE_BUILD_TYPE 	Debug 	Build type.
BUILD_SHARED_LIBS 	OFF 	Leave this option to OFF. Oat++ is meant to be used as a static library.
OATPP_BUILD_TESTS 	ON 	Set it to OFF to disable tests build.
OATPP_LINK_ATOMIC 	OFF 	Explicitly link libatomic. This flag is ignored for: MSVC, MINGW, APPLE, FreeBSD.
OATPP_DISABLE_ENV_OBJECT_COUNTERS 	OFF 	If ON, do not count oatpp objects (do not detect memory-leaks). This will increase performance.
Note: DO NOT use this flags to build/run application tests, as tests won't detect memory-leaks.
OATPP_DISABLE_POOL_ALLOCATIONS 	OFF 	If ON, do not use oatpp memory-pools.
OATPP_COMPAT_BUILD_NO_THREAD_LOCAL 	OFF 	Build without thread_local feature. 
  • hello,world

标签:WEB,OFF,++,C++,手册,OATPP,install,oatpp
From: https://www.cnblogs.com/waterruby/p/17623752.html

相关文章

  • C++欧几里得算法求最大公约数和最小公倍数
    定义最大公约数即为GreatestCommonDivisor,常缩写为gcd。一组整数的公约数,是指同时是这组数中每一个数的约数的数。一组整数的最大公约数,是指所有公约数里面最大的一个。那么如何求最大公约数呢?我们先考虑两个数的情况。欧几里得算法过程如果我们已知两个数\(a\)和\(......
  • .net core Fleck WebSocket使用笔记
    @@.netcoreFleck socket帮助类usingFleck;usingKOTL_EvidenceService.Model;usingSystem;usingSystem.Collections.Generic;namespaceKOTL_EvidenceService.Util{publicclassServerHelper{WebSocketS......
  • c#--Fleck WebSocket使用 (C#版Websocket实例)
    -->https://blog.csdn.net/qq_40580931/article/details/120781798 推荐几篇文章:WebSocket实战C#版Websocket实例C#工作总结(一):Fleck的WebSocket使用1.服务端代码usingFleck;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;namespaceWebSocketTes......
  • 点进来看看产品手册文档可以用在哪些地方吧
    产品手册文档目的是给用户提供关于某个产品或服务的详细信息和指导。它通常用来向用户、客户、合作伙伴或内部员工传达关于产品的功能、特性、使用方法和操作指南。如果你的企业刚好有这方面的相关需求的话,不妨看看looklook的这篇文章哟!产品手册文档的应用场景1.客户支持:产品手册文......
  • C++ 20新版本的重大更新来了
    作为Google和Microsoft使用的核心编程语言,C++新版本获得了国际标准化组织的批准。国际标准化组织(ISO)C++工作组,即第21工作组(WG21),已同意发布C++20版本的最终版内容。对于这个有着35年历史的C++编程语言,这是自2017年发布C++17版本后的首次重大更新。WG21C++ISO委员会......
  • 关于dev c++显示中文不显示,乱码和生成的可执行文件中文乱码
    1.不显示中文工具----编译器选项----显示-----去掉底下的复选框(第一个consolas下面)2,运行窗口中文乱码方法:1、工具—编译选项2、在第一个框中填入-fexec-charset=gbk3、勾选“编译器加入以下命令”4、重新编译一次以后运行。  ......
  • C++ 各代版本以及主要区别
    和大家平时用的APP等一样,编程语言每隔一段时间也需要重新制定标准。C++作为老牌编程语言,有着丰富的STL库以及比较规范的语法,是一个比较受欢迎且适合初学者接触编程时的第一个语言,本文简单介绍一下C++的主要版本更替,以及C++11标准和之前的有何区别。版本更替1.C++98第一版ISO/IEC......
  • 开发webrtc第一步
    WebRTC是一项实时通讯技术,它允许网络应用或者站点,在不借助中间媒介的情况下,建立浏览器之间点对点的连接,实现视频流和音频流或者其他任意数据的传输。WebRTC是浏览器支持,不需要引入任何其他的相关js组件,就可以直接使用。今天这节讲解在浏览器中做webrtc的第一步,通过;浏览器的API调用......
  • C++11实用特性3 --智能指针
    1智能指针在C++中没有垃圾回收机制,必须自己释放分配的内存,否则就会造成内存泄露。解决这个问题最有效的方法是使用智能指针(smartpointer)。智能指针是存储指向动态分配(堆)对象指针的类,用于生存期的控制,能够确保在离开指针所在作用域时,自动地销毁动态分配的对象,防止内存泄露。智能......
  • Unity Addressable 打包 WebGL 报错
    1.现象:PC端打包正常,Web平台打包后报错  2.原因分析    服务器的 MIME类型 没有.bundle 3.解决方案在web.config配置文件中加上对应的配置项,如下所示:<?xmlversion="1.0"encoding="UTF-8"?><configuration><system.webServer>......