
Linux
尚书左仆射
我喜欢按照不按套路出牌的套路出牌。
展开
-
Centos7下使用CMake
在进行需要提供跨平台服务的项目时,最好有相应的跨平台项目构建工具。本文所述的CMake即其中比较好用的跨平台构建工具之一。下文主要以C++语言为例进行使用演示。安装C++所需的环境:yum install -y gcc gcc-c++ make automake安装wget工具:yum install -y wget下载CMake工具:wget http://www.cma...原创 2020-03-22 11:52:40 · 3994 阅读 · 0 评论 -
从0实现分布式任务调度系统--实现cron表达式定时任务
在Linux下会经常使用cron表达式完成一些定时任务。下面通过git上的一个项目来达到类似的效果。获取资源:https://github.com/gorhill/cronexpr该包一共支持如下7个时间粒度设置,分别是:秒级,分,小时,日期,月份,星期,年份。各个支持的符号说明如下:“*”字符代表所有可能的值。“-”表示指定范围。“,”表示列出枚举值。“...原创 2020-01-11 14:42:19 · 460 阅读 · 0 评论 -
Linux内核(linux-5.2.9)--内核对象(类型无关的双循环链表)
前一段时间学习了Linux源码,过程比较艰辛。虽说工作中也不会去开发操作系统,但“他山之石可以攻玉”,其中的设计思想和解决方案还是可以参考的嘛。抽空陆续把所学的模块整理一下,方便后面及时参阅,温故知新。 内核对象是一种统称,驱动、设备、总线类型等都可以看作是内核对象。表示内核对象的结构是kobject,相当于Linux驱动模型的“基类”。kobject的定义如下(...原创 2019-08-28 14:11:23 · 1211 阅读 · 0 评论 -
Ini解析 --iniparser
Iniparser是针对INI文件的解析器。ini文件则是一些系统或者软件的配置文件。Iniparser库的API可以对ini文件(配置文件)进行解析、设置、删除等操作。下载iniparser:Github:https://github.com/ndevilla/iniparser主要代码都在src目录下:其中dictionary.h里面声明了一些直接解析ini file的API...原创 2019-09-07 19:20:42 · 3280 阅读 · 0 评论 -
Xml解析 --TinyXML-2
TinyXML-2 是小巧、精简且高效的C++ XML 解析库,可以被方便地应用到其他项目中。github: https://github.com/leethomason/tinyxml2简而言之,tinyxml-2是一个xml解析器,从xml文档构建一个可以读取、修改和保存的文档对象模型(dom)。有多种方法可以访问XML数据并与之交互。TinyXML-2使用的是文档对象模型(DOM...原创 2019-09-07 19:29:50 · 988 阅读 · 0 评论 -
Json解析 --JsonCpp
1、下载scons http://sourceforge.net/projects/scons/files/scons/2.1.0/scons-2.1.0.tar.gz/download2、解压scons-2.1.0.tar.gztar-zvxf scons-2.1.0.tar.gz 3、进入到解压目录scons-2.1.0下面,执行命令:sudopython setup....原创 2019-09-07 19:40:14 · 285 阅读 · 0 评论 -
libevent+inotify实现配置文件实时读取
有些配置文件需要被频繁使用,但是又需要支持根据“场景”进行模式切换。如果每次都重新读取势必影响服务响应效率,折衷的方式是定时重新读取,比如5分钟。但最好的方式是在真正需要的时候在重新读取,即,文件修改之后。那么如何得知所关注的文件已经被修改?Inotify 是一个Linux特性,它监控文件系统操作,比如读取、写入和创建。Inotify 反应灵敏,用法非常简单,并且比 cron 任务的繁忙...原创 2019-09-07 19:49:54 · 674 阅读 · 0 评论 -
多服务端实现配置文件实时同步 --lsync+rsync
很多企业需要多台服务器提供某个服务已经司空见惯了,当我们需要修改某个配置文件的时候,为了统一所有服务器上的配置,就需要文件同步的功能。不然一个个服务器去拷贝的话,一方面比较麻烦,另一方面也容易产生遗漏等问题。rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步。lsync 是lua语言封装...原创 2019-09-09 15:47:22 · 1873 阅读 · 0 评论