MySQL数据引擎InnoDB与MyISAM的互相转换

MySQL(或者社区开源fork的MariaDB)5.5以上支持InnoDB引擎,并将其作为默认数据库引擎。InnoDB带来很多改进,但是对系统资源占用明显增加。
之前附中校友回访的官网被人DDOS搞挂过一次数据库,后来又因为一个小小的插件导致数据库再次挂掉,查询日志后发现是内存占用过高,InnoDB分配不到内存了于是导致整个数据库shutdown。
在暂时不打算升级服务器且访问量并没有大到非要InnoDB不可的情况下,决定把全站数据库切回老当益壮的MyISAM。

PS. 如果内存没有1G不要玩MySQL5.6+,内存512M或以下只是挂个WordPress的老老实实用MyISAM。内存正好1G但是又跑了好几个东西的且偶尔会有点流量的(比如我)也乖乖用MyISAM吧。

下面说说具体方法。

又到考试周,又是nplive

去年考试周因为要直播深秋歌会倒腾了好几天nplive,当时选用的新版服务是Adobe Media Service,这个东西,是牛逼,但是,得买,拿网上秘钥激活的,很鸡肋。所以去年深秋为了求稳,老的那一套微软MMS并没有废弃,现场也还是推流给MMS,然后在机房弄了台笔记本开着MMS的视频然后屏幕捕捉再推到AMS…

今年毕业晚会,揽了个直播的活,又是考试周…每逢考试nplive…这次不能再像之前那样了。

浏览器播放hls视频流的解决方案

HLS (HTTP Live Streaming),Apple的动态码率自适应技术。主要用于PC和Apple终端的音视频服务。包括一个m3u(8)的索引文件,TS媒体分片文件和key加密串文件。

hls流在非苹果的PC机上只有微软的Edge支持,但三大移动平台上的支持都非常不错,因此在chrome等众多PC浏览器上需要使用flash进行编码后再播放给用户。在nplive中选用了强大的jwplayer(从iptv找到了破解版,再次感谢网络中心),通过js调用。

这里由于flash有着对访问对象的跨域限制,如果访问目标根目录的crossdomain.xml没有允许该访问来源或不存在crossdomain.xml,flash将不能访问目标资源,因此需要在每台推流服务器根目录部署crossdomain.xml,并允许*.bitnp.net的访问来源。

nginx upstream负载均衡

核心就是upstream

1、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

2、weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
例如:

1
2
3
4
upstream bakend {
    server 192.168.159.10 weight=10;
    server 192.168.159.11 weight=10;
}

使用shell登录校园网

深澜系列产品有两种表面上的方式登录校园网,一种是客户端,一种是网页,然而在没有图形界面的linux下面该肿么办。
这里参考了天神的博文http://blog.csdn.net/entalent/article/details/50881161
主要就是个post

抓个包就可以得到相应的参数,以下是可用脚本:

nginx-rtmp-moudle安装与配置

Github:https://github.com/arut/nginx-rtmp-module
此项目很久没更新了,不过基本使用没什么问题,亲测nginx1.10.1上会有一点小bug
这里再给一个fork后近期有过更新的项目 https://github.com/sergey-dryabzhinsky/nginx-rtmp-module

1.安装依赖包

1
2
3
yum install -y gcc gcc-c++
yum install -y openssl-devel pcre-devel zlib-devel
yum install git

由于之前将yum源全部删除只保留了系统更新的北理源,这里最好连外网安装一下EPEL便于一些软件的安装,校内源有提供

1
yum install epel-release

这里涉及到使用shell登录校园网,可看博客里的shell登录校园网

2.与nginx一起安装编译

1
2
3
4
5
6
7
8
9
cd /usr/local/
wget http://nginx.org/download/nginx-1.10.1.tar.gz
tar -zvxf nginx-1.10.1.tar.gz
git clone git://github.com/sergey-dryabzhinsky/nginx-rtmp-module.git
git clone git://github.com/gnosek/nginx-upstream-fair.git
cd nginx-1.10.1
./configure --add-module=../nginx-rtmp-module --add-module=../nginx-upstream-fair --with-http_ssl_module
make
make install

ps.这里一起安装了一个之后负载均衡可能会用到的nginx-upstream-fair https://github.com/gnosek/nginx-upstream-fair

修改CentOS yum源为北理源

作为先进生产力的代表,CentOS是大多数企业所采用的系统,可以通过yum源进行升级和应用安装,这里贴出改为可供校内访问的北理工镜像http://mirror.bit.edu.cn(在这给网络中心点个赞)

1.进入/etc/yum.repos.d/

1
cd /etc/yum.repos.d/

2.将目录下所有repo文件备份

1
mv CentOS-Base.repo CentOS-Base.repo.bak

其他文件同理

3.创建新的CentOS-Base.repo

1
yum CentOS-Base.repo

然后贴入如下代码

写点东西纪念一下博客装修完毕

一直想把博客弄的好看一点,一直没挤出时间来好好弄一段时间。

趁着离下一门考试还有一段时间,花了将近3天时间,打造出了一个自己还算满意的界面。

wordpress,最不缺主题和插件的一个开源程序,然而不知是百度太傻还是谷歌不懂我,翻了近百页试了几十个都没能找到一个满意的。后来不知道在哪看到了一句话——“好的主题都是自己慢慢改出来的。” 于是便开始了与代码3天的约会。

启用新域名JackH.cn

以前Godaddy的域名相对于国内的什么万网新网而言,又便宜又没有那么一大堆乱七八糟的认证,而且还是全球最大域名商,所以果断都选择了Godaddy。而如今,万网新网的价格也都不再高攀不起,况且中国人做的给中国人看的网站还是应该按照国内的流程来,CDN、百度联盟等等这些东西都需要备案号,于是…把所有Godaddy下的域名全部转回了万网,还另外注册了一个jackh.cn 嗯 但愿万网不负众望,经得住考验。

服务器迁移至香港~

迁移至香港

wordpress的方便性确实NB 改一个文件就OK了 不像discuz麻烦的死

终于告别米国的渣网速了T^T

1 2 3