flightgear联飞服务器fgms构建

本文描述关于flightgewar的联飞服务器fgms的vs2013构建及简要的分析下。

必备

fgms项目:https://gitlab.com/fgms/fgms-0-x

多线程库pthread win32:ftp://mirrors.kernel.org/sourceware/pthreads-win32/pthreads-w32-2-9-1-release.zip

fgms的配置文件http://flightgear.mxchange.org/fgms/fgms.conf

生成工程方案

打开cmake,fgms的目录下分别填入

source code:E:/fgms-0-x-master

build the binaries:E:/fgms-0-x-master/build

configure->选择vs2013->Finish。

设置pthread的路径

E:fgms-0-x-masterpthreadsPre-built.2include

E:/fgms-0-x-master/pthreads/Pre-built.2/lib/x86/pthreadVC2.lib

Generate生成解决方案->编译生成exe,拷贝pthreadVC2.dll到E:fgms-0-x-masterbuildDebug目录下。

复制文件fgms.conf到C:Usersfreeyun(备注这个是我的用户文件夹,紧供参考。)

fgms.conf这个我还域名深入去研究过它的参数,参数说明http://fgms.freeflightsim.org/fgms_conf.html。

源码简要分析

全部联机玩家的列表:m_PlayerList

//发送数据
int netSocket::sendto ( const void * buffer, int size,
                        int flags, const netAddress* to )
//接收数据
int netSocket::recvfrom ( void * buffer, int size,
                          int flags, netAddress* from )

写在后面

本来是想研究网络游戏的位置同步,不停的查找开源的项目,想起flightgear的项目,发现支持cmake生成。笔者只是初略的看源码,没深入,希望能给flighgear的研究的抛砖引玉,这里没写出联机设置,手册已经有了没必要在这里重复。

联机设置:http://wiki.flightgear.org/Howto:Multiplayer

更多的参考资料:http://fgms.freeflightsim.org/。

网站搬家

wordpress架的网站在外面好长时间,终于决定搬回来了,记录搬家到阿里云的过程。

原因

在美国的虚拟主机,便宜的,一年100多块,速度上还是接受,有每个月宽带限制,几个网站共用一个IP的,对于国内的虚拟主机价格实惠,做个小站流量小。通过DNSPOD监控发现有偶尔的无法访问,另外访问速度相对慢一点。在某些原因,写文章审核保存草稿比较慢,无法接受,通常我一篇文章写几个小时反复的查看,排版。上面种种原因,要搬到国内。

过程

1、购买云主机

通过对比选择阿里云,目前国内有腾讯云,盛大云,百度云等,价格上面阿里云优惠,还有是万网被阿里云收购,在云主机上面经历过几年的验证,稳定可靠性有保 证。另外我腾讯没512MB内存云服务器,我网站没有必要弄1GB内存云服务器。服务器地域青岛一个月49.5,在网上找个优惠码打9折。当然如果你想要1G内存的,也可以购买腾讯云。操作系统就选择linux centos 7.0。

2、备份数据:

一般在虚拟主机都有phpmyadmin,通过界面导出整个网站数据库。还有一种方法是利用wordpress工具->导出,来导出xml数据。不建议IE浏览器做这种操作,否则存在导出数据不全。拷贝你的wordpress程序。

3、安装环境

安装Xshell,登录到你的云主机。

用于相互传送文件的工具,运行:yum install lrzsz

lrzsz的命令说明 rz :本地文件到服务器,sz xx:服务器文件到本地。

安装lnmp(Nginx、PHP、MySQL、phpMyAdmin)命令:wget -c https://api.sinas3.com/v1/SAE_lnmp/soft/lnmp1.2-full.tar.gz && tar zxf lnmp1.2-full.tar.gz && cd lnmp1.2-full && ./install.sh lnmp

上面执行时间有点长,看你主机性能。

按照提示是在mysql密码。

4、恢复网站数据

添加vhost执行: lnmp add vhost  (注意选择支持伪静态)

删除是有的插件,防止某些插件导致网站502错误等。

4.1可视化恢复:

将你备份的程序拷贝至你的目录(比如我的www.freeyun.com)下,phpmyadmin创建数据库,恢复你的sql文件,或者你登录后台通过xml的文件恢复数据。

4.2mysql命令恢复,注意mysql命令后面的分号(;):

mysql -u root -p;//登录数据库

CREATE DATABASE IF NOT EXISTS wordpress DEFAULT CHARSET utf8 COLLATE utf8_general_ci;//创建数据库wordpress

show databases;//显示全部数据库
use wordpress;//选择数据库
source  /~/wordpress.sql;//导入数据文件
drop database wordpress;//销毁wordpress数据库

为了正常升级wordpess 及插件执行:chown www:www -R www.freeyun.com

目录www.freeyun.com 下的user.ini文件无法直接修改,而且是隐藏文件可能在winscp下可能无法看到,建议使用vim编辑器或nano编辑器进行修改。

如要修或删除需要先执行:chattr -i /网站目录/.user.ini

修改完成后再执行:chattr +i /网站目录/.user.ini

如果你想要访问你的网站,你需要wp_options下面siteurl的值修改成你服务器IP地址。

5、配置mail

为了你的主机支持wordpress mail的,即发表评论,你收到邮件通知,回复评论,人家评论者收到恢复。有两种方法

  • 安装WP-Mail-SMTP插件,
  • 安装postfix这个配置有点复杂,作为sendmail的代替者,速度秒发e-mail,我后面文章再补写一篇文章

6、备案

分两步审核,第一是阿里云审核,第二是你身份证属地通信管理局,具体就看阿里云的提示,我第一步3天时间(包括了邮寄资料的时间),第二步8个工作日。这期间,你要把你的dns指向阿里云IP。

结束语

2015-8-26通过的备案,备案期间,天天上去看管局通过没,接不到管局电话。经过几天观察,没发现有宕机,访问速度杠杠的,最近在由于我网站的图片有些多,是不是得用七牛的加速下下。gravatar 的大头像有点烦,国内是加载不到,禁用中。