旧手机做服务器是怎么回事呢?为什么要拿一台废旧手机来做服务器呢?旧手机相信大家都很熟悉,但是旧手机做服务器是怎么回事呢,下面就让小编带大家一起了解吧。
  旧手机做服务器,其实就是做服务器,大家可能会很惊讶旧手机怎么会做服务器呢?但事实就是这样,小编也感到非常惊讶。
(为了掩盖买不起VPS,只能用工控机搭服的穷鬼的借口

仓库:https://gitee.com/kawashiro_ryofu/ryoun-gate

在B站上,或多或少可以看到一些旧手机废物利用的视频。但多数只是用来看的。即便在摩尔定律下设备逐渐淘汰,也不代表这台机器就是废物。这是也是我作为图吧垃圾佬最后的倔强。

回到正题,这部索爱是和班上某个同学手上花35软妹币拿来的。它曾作为我的主力机使用。但是随着新冠肺炎的到来,我发现它无法满足我在停课不停学阶段的需求。于是就把它换成了索尼的Xperia X Performance。

在此之后,我购买了域名,把网站开了。但由于我感觉那个配置及其低的服务器(其实就是个工控机)可能无法带动全部服务,就突发奇想,让旧手机分担一部分性能。虽然网上有Web服务器的APP(集成NGINX,APACHE,PHP,MYSQL),但这部索爱LT18i所运行的操作系统非常年老,恐怕带不动,况且我不需要多余的服务,就开始从头编写Web服务。

我使用C语言来编写。在一开始,我尝试在Qemu ARM下运行Raspbian再编译二进制到手机上,但失败了,可能是处理器架构不兼容。(我也很奇怪啊,ARMv7a不可能不兼容ARMv6)没办法,只好在用C4droid在手机上编译。

我使用C语言来编写。在一开始,我尝试在Qemu ARM下运行Raspbian再编译二进制到手机上,但失败了,可能是处理器架构不兼容。(我也很奇怪啊,ARMv7a不可能不兼容ARMv6)没办法,只好在用C4droid在手机上编译。

索尼爱立信LT18i(图片来自中关村在线)

相较与Python的socket,C语言没有面向对象,套接字也就更难。但还好,网上找的到实例。而在整个项目开发的过程中,主要的难点是文件操作。编译源代码后,内存泄漏是常有的。用标准库读取文本也会在字符串末尾多出一个奇怪的字符。这个字符大概是在整个字符数组中的倒数第二个元素,所以在瞎几把钻研几天后得出解决方法。
我手上那部索尼爱立信