在mac系统实现一个websocket常驻进程服务,在mac系统贯彻一个websocket常驻进程服务

由于工作的缘由,最近查证了弹指间mac系统下常驻服务的接受websocket信息和创办进程的措施原理。将具体落实细节记录下来备忘。

出于工作的案由,如今查证了一下mac系统下常驻服务的收取websocket音信和开创过程的法子原理。将具体落实细节记录下来备忘。

(一).准备干活

(一).准备干活

1.装置brew,在终端中输入:

1.安装brew,在顶峰中输入:

ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)” 

ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)” 

在意:假如当前的用户是管理员,需要对权力举行许可,在实施下边的吩咐前先实施:sudo
chmod -R g+w /usr/local 

只顾:假若当前的用户是协会者,需要对权力举行许可,在执行下边的指令前先举办:sudo
chmod -R g+w /usr/local 

2.安装boost

2.安装boost

(a).brew install boost

(a).brew install boost

(b).添加boost环境变量,vi ~/.bash_profile

(b).添加boost环境变量,vi ~/.bash_profile

超文件的终极添加BOOST_LIBS=/usr/local/lib;BOOST_INCLUDES=/usr/local/include/boost;

超文件的末段添加BOOST_LIBS=/usr/local/lib;BOOST_INCLUDES=/usr/local/include/boost;

3.安装openssl

3.安装openssl

(a).下载并解压openssl

(a).下载并解压openssl

https://www.openssl.org/source/openssl-1.0.2l.tar.gz

https://www.openssl.org/source/openssl-1.0.2l.tar.gz

(b).sudo ./config –prefix=/usr/local/openssl  

(b).sudo ./config –prefix=/usr/local/openssl  

(c).make;make install

(c).make;make install

(d).添加openssl环境变量,vi ~/.bash_profile

(d).添加openssl环境变量,vi ~/.bash_profile

朝文件的尾部添加:OPENSSL_PATH=/usr/local/opt/openssl

朝文件的尾巴添加:OPENSSL_PATH=/usr/local/opt/openssl

4.下载websocketpp源代码

4.下载websocketpp源代码

https://github.com/zaphoyd/websocketpp

https://github.com/zaphoyd/websocketpp

(二)websocketpp集成工程安排

爱博体育,(二)websocketpp集成工程安排

1.创设一个xcode command line tools工程

1.创建一个xcode command line tools工程

2.安装好Herder文件,lib文件搜寻路径和连接库参数

2.设置好Herder文件,lib文件搜寻路径和连接库参数

 

 

 

 

爱博体育 1

爱博体育 2

 

 

 

 

爱博体育 3

爱博体育 4

 

 

3.编辑code,并编译成可执行文件

3.编制code,并编译成可执行文件

(三)成立一个 mac 的后台进程(daemon)

(三)创设一个 mac 的后台进程(daemon)

1.编写plist文件

1.编写plist文件

<?xml version=”1.0″ encoding=”UTF-8″?>

<?xml version=”1.0″ encoding=”UTF-8″?>

<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN”
http://www.apple.com/DTDs/PropertyList-1.0.dtd"&gt;

<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN”
http://www.apple.com/DTDs/PropertyList-1.0.dtd"&gt;

<plist version=”1.0″>

<plist version=”1.0″>

<dict>

<dict>

<key>Label</key>

<key>Label</key>

<string>com.liuxt.cmdservice</string>

<string>com.liuxt.cmdservice</string>

<key>ProgramArguments</key>

<key>ProgramArguments</key>

<array>

<array>

<string>/Users/Shared/cmdservice</string>

<string>/Users/Shared/cmdservice</string>

</array>

</array>

<key>RunAtLoad</key>

<key>RunAtLoad</key>

<true/>

<true/>

</dict>

</dict>

</plist>

</plist>

 

 

 

 

 3.将编译好的command line service可执行顺序copy到

 3.将编译好的command line service可执行顺序copy到

/Users/Shared/

/Users/Shared/

目录下,将plist文件copy到

目录下,将plist文件copy到

/Library/LaunchDaemons/目录下

/Library/LaunchDaemons/目录下

 

 

4.重启mac台式机,可以发现command line service程序已经运行起来了

4.重启mac台式机,可以窥见command line service程序已经运行起来了

相关文章