操作系统
操作系统
jenie
jenie
展开
-
随记,关于使用共享目录挂载功能
服务器ip 10.20.8.40客户端ip 172.18.243.131第一步( 服务器)首先执行如下命令安装 nfs-utils rpcbind:yum -y install nfs-utils rpcbind启动 nfs & rpcbindsystemctl start nfssystemctl start rpcbind第二步( 服务器)创建要共享的文件夹,并设置权限(假设共享文件夹所在机器 IP 为:172.18.243.131)mkdir -p /home/s.原创 2021-02-19 11:02:25 · 345 阅读 · 0 评论 -
关于使用mount的文件系统进行远程机器的挂载功能、
环境:服务器:10.20.8.40 (CENTOS7.4)客户端:172.18.243.131(CENTOS7.4)一、服务端1、检查nfs服务rpm -qa|grep nfsrpm -qa|grep rpcbind2、启动服务systemctl start rpcbind.servicesystemctl start nfs.service3、创建共享目录mkdir /home/swoole/haoyue_websocket/uploadchm...原创 2020-09-29 17:41:17 · 513 阅读 · 0 评论 -
关于centos8 安装php7.2源码安装 简单笔记
yum -y install libxml2 libxml2-devel gd gd-devel wget http://cn2.php.net/distributions/php-7.2.0.tar.gz tar -zxvf php-7.2.0.tar.gz //解压 cd php-7.2.0 //切换路径./configure --prefix=/usr/local/php --with-iconv-dir=/usr/local/libiconv --with-co...原创 2020-08-25 16:06:56 · 1031 阅读 · 0 评论 -
关于centos配置ftp服务器,简单笔记
由于工作需要,配置一下ftp服务器,做一个小总结FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。1.安装ftp服务原创 2020-08-20 23:24:47 · 220 阅读 · 0 评论 -
关于centos如何配置IP地址和DNS等操作
centos配置ip,dns,之前比较零散因此,打算重新整理一下cd /etc/sysconfig/network-scripts/TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=no#BOOTPROTO=dhcpBOOTPROTO="static"#BROADCAST="192.168.1.254"GATEWAY="192.168.1.254"IPADDR="192.168.1.200"NETMASK="255.255.255.0"#D原创 2020-08-20 17:43:50 · 169 阅读 · 0 评论 -
c语言实现split函数。用于http协议字符串解析比较有用。用\r\n分隔成不同的数组。
#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct { char **str; //the PChar of string array size_t num; //the number of string}IString;/** \Split string by a char * * \param src:the string .原创 2020-07-30 00:03:27 · 457 阅读 · 0 评论 -
关于中文字符编码在linux下转换。随手笔记
字转换:wctomb、mbtowc,baiwc指Widecharactor,mb指Multi-byte。字符串转换:wcstombs、mbstowcs,wcs和dumbs的s指string。这4个函数zhi是C标准函数库函数中的。如果只是dao在Windows平台下编程,可直接调用WindowsAPI函数WideCharToMultiByte和MultiByteToWideChar实现。但是如果调用标准库函数的话,在Linux下也是有...原创 2020-07-29 17:54:31 · 435 阅读 · 0 评论 -
logcpp4的几种日志的各种写法以及实践。
Log4cpp使Log4cpp中最重要概念有Category(种类)、Appender(附加器)、Layout(布局)、Priorty(优先 级)、NDC(嵌套的诊断上下)。Category、Appender与Layout三者的关系如下图所示:下载地址:https://sourceforge.net/projects/log4cpp/files/latest/download 我下载的是: log4cpp-1.1.3.tar.gz解压:tar zxf lo...原创 2020-06-27 15:06:34 · 1395 阅读 · 0 评论 -
C语言libyaml基于文档的解析示例。
libyaml安装说明,请参照https://github.com/yaml/libyaml不过官网的示例,真是不太好找实现的样例,找了大半天,都不知道示例在搞啥,也许我不太深刻吧,果然国外人的思维和中国人不一样。其次就是解决一个非常简单的事情,读这个配置,把参数取出来就可以了,其余的不要折腾。直接上代码了。先搞个db.yaml的文件样子db_server: "localhost"db_password: "test"db_username: "abc"nationa..原创 2020-06-22 00:15:06 · 4483 阅读 · 4 评论 -
zlib库的解压代码实现
zlib的安装,请访问https://blog.csdn.net/jenie/article/details/106730965InflatingStream.h#ifndef _INFLATING_STREAM_H_#define _INFLATING_STREAM_H_#include <iostream>#include <zlib.h>class InflatingStream{public: enum StreamType { STR原创 2020-06-13 13:24:25 · 386 阅读 · 2 评论 -
tinyxml2的安装使用及示例总结
TinyXml2 库使用方法 安装 下载地址 https://github.com/leethomason/tinyxml2使用 git 下载(1)下载 tinyxml2git clone https://github.com/leethomason/tinyxml2.git(2)进入相应目录并编译cd tinyxml2/ cmake . make(3)测试该版本的准确性./xmltest(4)安装sudo make inst...原创 2020-06-13 11:41:50 · 5790 阅读 · 1 评论 -
C++自己实现反射案例
/* * @Descripttion: C++自己实现反射案例 * * 根据一个字符串(类的名称),创建出一个对象 * 实现思路 * 1. 可以用一个map来存储类名-构造函数这样的键值对,每新增一个类,就在这个map“注册”一个键值对 * 2. 因为这个map是一个全局都会用到的,所以可以使用单例模式 * 3. 在进入main函数之前,这个map就应该生成好,即每一个类在实例化之前就执行了“注册”的代码 * * @version: 1.0 * @Author: Milo * @Da.原创 2020-06-13 11:21:08 · 172 阅读 · 0 评论 -
消息队列之zmq的相关原理笔记
原创 2020-06-13 11:03:16 · 645 阅读 · 0 评论 -
ubuntu的dlib的安装编译
https://gitee.com/secens/dlib.gitcd dlib>>首先进入dlib的根目录下>>再执行如下语句:cd examples #进入dlib下的examples文件夹mkdir build #新建build文件夹,存放cmake编译后的执行文件cd build #进入新建好的build文件夹cmake .. #cmake编译examples整个文件夹cmake --build . --config Release.原创 2020-06-07 12:00:20 · 395 阅读 · 0 评论 -
using和template同时使用的方法
如果有这样的定义template <class T>using XXX = const T;则xxx<int> x等于const int x#include <iostream>template <typename TYPE>using IN = const TYPE&;int add(IN<int> a, IN<int> b){ return a+b;}int m..原创 2020-06-07 02:54:09 · 705 阅读 · 0 评论 -
c语言实现生产者与消费者
实验目的①实现生产者—消费者问题的模拟,以便更好的理解此经典进程同步问题。生产者-消费者问题是典型的PV操作问题,假设系统中有一个比较大的缓冲池,生产者的任务是只要缓冲池未满就可以将生产出的产品放入其中,而消费者的任务是只要缓冲池未空就可以从缓冲池中拿走产品。缓冲池被占用时,任何进程都不能访问。②每一个生产者都要把自己生产的产品放入缓冲池,每个消费者从缓冲池中取走产品消费。在这种情况下,生产者消费者进程同步,因为只有通过互通消息才知道是否能存入产品或者取走产品。他们之间也存在互斥,即生产者消费者必须互原创 2020-05-31 12:32:59 · 3924 阅读 · 0 评论 -
c语言进程池原理及实现
进程池与线程池出发点一样,都是考虑多核情况下任务的并行处理;从多进程和多线程编程的区别上看,多线程有许多的同步、互斥的方法,较擅长于异步协作;而多进程同步、互斥的方法相对比较麻烦,则更多地考虑上下文独立执行;从Nginx使用线程池/进程池处理大并发的思路去分析,其实就是多客户端大量连接的场景;主进程监听是否有新客户端tcp连接,然后分发给工作进程去响应http请求,在这种场景下每个连接都是一个独立的上下文逻辑,每个工作进程的内容都是对等地处理http请求,这种情况就非常适合进程池的方式;把上述的.原创 2020-05-31 12:30:35 · 1641 阅读 · 0 评论 -
c语言线程池缩放功能实现
#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h>#include <pthread.h>#include <signal.h>#include <errno.h>#include <assert.h>#define DEFAULT_TIME 10 //10s检测一次#define MIN_W.原创 2020-05-31 12:24:27 · 199 阅读 · 0 评论 -
c语言简单的线程池实现方法
#include <stdio.h>#include <pthread.h>#include <stdlib.h>#include <errno.h>#include <unistd.h>typedef void*(*FUNC)(void* arg); //指向函数的指针,用来指向我的线程函数。typedef struct _thpool_jobqueue //任务队列.原创 2020-05-31 12:22:42 · 249 阅读 · 0 评论 -
c语言实现线程池代码实现
关于线程池相关笔记,实现了一半,今天把完整封装和调用实现一下。https://blog.csdn.net/jenie/article/details/106440389封装的思路如下:通过c语言构造一个空间大小,构造函数和析构函数typedef struct { size_t size; void* (*ctor)(void *_self, va_list *params); void* (*dtor)(void *_self);} AbstractClass;new对像带参数.原创 2020-05-31 12:20:16 · 354 阅读 · 1 评论 -
LVS负载均衡
一、LVS简介LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中。该项目在Linux内核中实现了基于IP的数据请求负载均衡调度方案,其体系结构如图1所示,终端互联网用户从外部访问公司的外部负载均衡服务器,终端用户的Web请求会发送给LVS调度器,调度器根据自己预设的算法决定将该请求发送给后端的某台Web服务器,比如,轮询算法可以将外部的请求平均分发给后端的所有服务器,终端用户访问LVS调...原创 2020-05-22 19:49:22 · 99 阅读 · 0 评论 -
librtmp的简单安装使用
(一)openssl安装(二)zlib安装(三)libssl-dev 安装以上步骤,可自行安装,本文主要讲librtmp的编译安装(四)编译libRTMPgit clone git://git.ffmpeg.org/rtmpdump原创 2020-05-20 23:16:00 · 1552 阅读 · 0 评论