斐讯N1搭建高性能博客
前些日子我在网上淘到了一台斐讯n1,Amlogic S905D的板子让这个盒子平滑地用上了Armbian系统,有了linux的加持,让这个设备的玩法又上升了一个层次,网上大多都是把他作为旁路由用来富强上网,我选择把他做成一台服务器,部署我的博客,最终效果还挺不错.从刷系统到网站部署踩了不少坑,写这篇文章是来简单记录一下
搭建完成 成品展示:http://y0.cn/su
1、刷入Armbian系统
需要准备一个armbian的镜像文件,用balenaEtcher烧录到U盘里,n1开启ADB,用官方降级工具引导U盘启动,然后就开始滚代码,看了这些一闪而过的代码,大体是在做C编译,还有系统的功能加载,等代码跑完设置系统密码,在根目录下执行./install.sh,把系统写入eMMC
2、配置环境
做以下配置
- 我的博客是Django开发的,先来一个py3,pip3全家桶更新
- Docker
- Nginx
- mariaDB[MySQL]
这里选择用Docker来装主体,在这个设备上搭建网站的中心思想就是追求极致轻量。不过想重也难,8GB的eMMC,一个狭小的空间里要把py全家桶环境,数据库,博客文件都塞进去还是有些紧张的... 为什么选择MySQL的“女儿”mariaDB,因为中意他的兼容性,不会出现mysql5.*的sql文件到8.*可能用不了的情况。
现在总结看来就这四样,但是在aarch64架构上装依赖还是遇到了一些问题,也简单记录一下
- [pip环境]-----------安装mysqlclient
- 报密钥错误就添加密钥
- 装依赖[安装顺序装,否则报错]
- 先sudo apt-get installdefault-libmysqlclient-dev
- pip install wheel
- sudo apt install python3-dev
- sudo pip3 install mysqlclient
3、内网穿透
网站在本地顺利跑起来后就可以搞内网穿透了,买一个域名解析到ngrok第三方平台穿透就大功告成了
4、性能测试
通过用Docker部署环境,让整体配置都轻了很多,8G的eMMC还剩余3.4G,负载很低
n1与阿里服务器搭建的环境、版本都是一模一样,对比一下页面加载速度,和我预计的结果差不多,n1在读数据库上败给了阿里服务器,毕竟Amgoics905D + 2G再怎么折腾也比不过Intel Xeon E5 + 4G DDR4.。。
网络上竟然也被吊打了... 我家的是移动200M,60M的上传,比不过阿里1M的带宽 无语凝噎...
5、性能优化
网络延时高,暂时还不确定什么原因,就不甩锅给移动了。选择一套谷歌家的TCP阻塞控制算法,增加网络的吞吐能力,降低延时,部署后测试效果如下
效果很好! 出乎我的意料之外 ,再次证明了算法决定性能
## 6、费用清单
斐讯n1 | 90元 |
第三方穿透 | 10元/月 |
电费 | 2元/月 |
计算得出除去机器本身的90元费用,运营一个月的博客大约花费13.56元,主要花销在了穿透上,如果家里有公网IP的话,就用不着穿透了,一个月花3.56元
对比一下我的阿里ESC,1M带宽,40GB高效云盘 ,一个月需要147.20元,阿里再也不香了
最新文章
- node.js学习(三)简单的node程序&;&;模块简单使用&;&;commonJS规范&;&;深入理解模块原理
- 图片上传代码(C#)
- SQL数据库基础(二)
- win7的IE11降到IE8
- jQuery登陆判断简单实现代码
- LBA(逻辑区块地址)及PBA(物理区块地址)
- Swift 包管理器命令行使用
- Sersync实时同步
- zoom与scale的异同
- ABP 框架学习-01篇
- 一个简易内存池(C++)
- javascript算法题判断输入年份是否是闰年
- java访问权限修饰符
- SLAM+语音机器人DIY系列:(二)ROS入门——6.编写简单的service和client
- encode与decode
- javascript 中的原型继承
- MyBatis的好处及常见问题
- Centos7.1环境下搭建BugFree
- Springboot打包war
- 人机猜拳游戏Java
热门文章
- 【JAVA习题七】输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
- [JavaWeb基础] 032.第三方插件pinyin4j的使用
- [COCOS2DX-LUA]0-003.根据COCOS2DX热更新
- 不可不知的辅助测试的Fiddler小技巧
- HTTP/2 简介及https原理
- IDEA 插件推荐 —— 让你写出好代码的神器!
- DynamIQ扫盲文
- Java实现 LeetCode 771 宝石与石头(这是真暴力)
- Java实现 LeetCode 1162 地图分析(可以暴力或者动态规划的BFS)
- java实现第七届蓝桥杯骰子游戏