前几天,我在我的星球发了一条动态:入手洋垃圾、重操老本行。没错,利用业余时间,我又重新捣鼓捣鼓代码了。在接下来一段时间,我会分享我从服务器的搭建到完成Android产品开发的整个过程。这些东西之前都是折腾过的,如今再来一次,我就会把整个过程用文字记录下来。今天第一篇就是关于服务器的挑选。
为什么需要服务器
Android系统开发,通常是需要对大几G的Android源代码编译,对编译环境有一定的要求。我记得我刚开始接触Android的时候是Android2.3(Gingerbread),总代码量不到10G。经过10多年的发展,现在已经是Android15(Vanilla Ice Cream),代码量已经激增到一百G。我下载的AOSP Android13,大概有140G代码,整个编译完成之后约为246G
koffu@koffu-desktop:~/projects$ du --max-depth=0 -h aosp_tsinghua/ 246G aosp_tsinghua/ koffu@koffu-desktop:~/projects/aosp_tsinghua$ du -h out/ --max-depth=0 104G out/
所以,所有工作的起点,需要配置一台比普通PC性能更强的设备,用于Android代码的编译。
如何选?
服务器的选择主要有以下3种方式:
-
租用云服务器:阿里云、腾讯云等。根据你的需求配额CPU和内存、存储。这个方案的优点就是简单,环境都云商配置好,你自己选择一下即可。缺点就是贵,一般是几百到几千一年不等,还有一个不可忽视的缺点就是大文件上传下载不慢。
-
配置一台强一点的笔记本:笔记本拥有移动办公的优点,但因为兼顾电池使用,一般会使用低功耗的CPU,以及普通的PC配置,那么就需要选择高配的电脑。费用虽然是一次性的,但也不低,好一点需要需要5-6K;
-
淘一台强一点的服务器:服务器众所周知,是拥有较高的性能,一般会有多CPU,多个扩展接口。一般有塔式和刀片式两种,刀片式的就是放在机房机架上,最好是需要有独立的工作机房,能够防尘散热,同时也隔离工作噪声。而塔式可以在家里或者办公室放,具备较好的散热体系,不需要单独的空调机房。价格一般是2千左右。
众所周知,第三种方式是兼容成本和性能,最适合新手入门。我就是在闲鱼入手了一台二手的至强E5的塔式服务器,俗称洋垃圾。内存是64G,然后自己配置了一个4T的硬盘,整个下来1800左右。
为什么是E5?
Intel Xeon E5是英特尔公司推出的一款针对服务器市场的处理器系列,它以提供高性能、高可靠性和丰富的内置功能而著称。第五代至强E5处理器在多个方面进行了显著的改进和优化,最主要是便宜,从几块到一百多块不等。E5从上市到现在也十多年了,所以也发展了丰富的产品线,这个在挑选的时候要注意辨别。小心商家用十年前的芯片卖给你,帮他消库存,虽然便宜,但性能就会大大折扣。推荐看一下B站这个视频,对整个E5家庭的性能和价格有一个大致的了解:2024年7月X99平台至强E5V3V4价格行情推荐[1]
性能如何?
在所有的配置参考下,最终的表现就是重新编译一套干净的源代码的时间。我查了一网上,如下的配置编译时间大概1个多小时,我就按照这样的配置挑战。
预估的编译时间:参考[2]
CPU : Intel® Xeon® CPU E5-2686 v4 @ 2.30GHz * 2
内存 : 128GB
Android 11 编译时间(01:12:30 (hh:mm:ss)
最终我入手的配置如下:
CPU: Intel® Xeon® CPU E5-2680 v4 @ 2.30GHz * 2 主板:华南金牌X99-F8D 内存:64GB 存储:512G固态硬盘(系统)+4T机械硬盘(数据)
入手之后,我第一时间安装好Ubuntu22.04系统,编译了公版的AOSP13,整个时间是1小时16分钟,符合预期,比较满意。
好了,硬件环境已经准备好了,接下来就是环境的配置,以及AOSP代码下载,以及后续的开发。
参考资料
[1]
2024年7月X99平台至强E5V3V4价格行情推荐: https://www.bilibili.com/video/BV1nw4m1Y7bb/?share_source=copy_web\&vd_source=6a19100227d918533c46e871e307af8e
[2]