摘要:
一、目标 c/或c++如何进行序列化和反序列化? 二、序列化是什么 序列化:将一个内存对象(如结构体)转化成字节数组 反序列化:将字节数组还原成内存对象 目的:本地文件保存或网络传输 总结:对象和字节流的转化 三、方式 c(自己实现) 简易结构体 不考虑复杂场景的简易版本 #include <ios 阅读全文
摘要:
systemd 服务脚本编写和管理 基础 Linux系统管理服务的方式 管理服务的方式取决于初始化系统 初始化系统和服务管理器 说明 适用 systemd 配置文件unit,使用systemd命令集管理 CentOS7/RHEL7以及以后版本 init.d 适用脚本文件管理服务:/etc/init. 阅读全文
摘要:
一、背景 存在java程序调用c++程序的场景,对常见的jni技术进行使用方法的总结。 二、技术 Java Native Interface(JNI)是一种编程框架,它允许Java代码与使用其他编程语言(如C、C++)编写的应用程序和库进行交互。JNI提供了一组API,使Java虚拟机(JVM)能够 阅读全文
摘要:
交叉编译 背景 linux下支持x86版本和arm版本的c++程序,每次需要在指定平台进行编译,希望能够统一平台。 比如在linux上可以编译linux和arm的程序。 编译平台和运行平台不同 目标 一个平台可以打出多个平台的包 技术 交叉编译 原理: 1 为什么要交叉编译 在开发过程中有宿主机和目 阅读全文
摘要:
持续部署 背景 旨在实体机资源不足的条件下,使用虚拟容器进行持续部署工作。 资源充足的条件下,可快速拉起多个部署环境进行验证,例如如下情况: 满足多人的机器使用需求:每个组件或每个人都可拥有自己的测试环境进,可规避其他人的修改对自身的影响 基于 feature 的测试验证需求:针对每一个 featu 阅读全文
摘要:
快速入门 视频参考:BV11L411g7U1,资料:https://docker.easydoc.net:主windows平台 虚拟机环境基础镜像:ubuntu-22.04.3-desktop-amd64.iso 安装os时配置:中文简体,NAT网络登录,4G内存,100G磁盘,仅作为参考 基础配置 阅读全文
摘要:
openssl 一、入门 平台:linux (一)下载和使用 1、直接安装 执行以下命令,会安装OpenSSL的开发头文件和库文件 sudo apt-get update sudo apt-get install libssl-dev 创建源代码文件main.cpp,内容如下 #include <i 阅读全文
摘要:
使用docker部署编译环境并使用gitlab-ci实现代码自动打包 一、需求 1、需求描述 实现代码git仓库提交能够自动编译出结果 ①需要一个编译环境能够共享编译:使用docker创建镜像来维护,创建完毕无需频繁修改 ②使用gitlab的ci进行持续继承,代码提交自动打包,ci中会使用①中的镜像 阅读全文
摘要:
了解gitlab-ci流程 作用 GitLab CI是GitLab内置的进行持续集成的工具。它的中心思想是,当每一次push到GitLab的时候,都会触发一次脚本执行,脚本的内容可以包括测试、编译、部署等一系列自定义的内容。 在GitLab中,要使用CI,需要在仓库根目录下创建一个名为.gitlab 阅读全文