热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

为什么你会在你的数据中心中部署ARM服务器

本文我们讨论ARM服务器的发展前景。ARM服务器是按着x86服务的规格做的,你能想到的x86服务器的机制基本上它都提供。比如RAS,UEFI,服务器Linux发行版,其他不可言说的

本文我们讨论ARM服务器的发展前景。

ARM服务器是按着x86服务的规格做的,你能想到的x86服务器的机制基本上它都提供。比如RAS,UEFI,服务器Linux发行版,其他不可言说的OS发行版,Docker,KVM,Web Server,Memcache,SQL/NoSQL数据库,iSCSI,Java/Python/PHP,OpenStack等等等等,这些都有人跑过,在验证环境和产品环境中都有人跑过。

当然,前提是你的软件得重新编译……

这就拦住很多人了。不过你得这样想,如果你能把ARM服务器在数据中心某些节点上用起来,特别是那些完全被你控制的节点上(比如说占据整个网络三分之一节点的块存储节点?或者大量使用的Memcache节点?)用起来,比起你现在数据中心硬件上只有一个老大哥,你没有任何议价能力,这个背后是不是有种邪恶的快感?

现代网络最大的好处在于它是建立在通用通讯协议的基础上的,微服务的存在给你灵活移动业务提供了无数的可能。ARM服务器的引入,作为内置大部分外设能力的SoC(比如大部分ARM服务器都是直接内置SAS, 高速网络和PCIE控制器),为这个网络的降成本和降功耗,提供了更多的可能性。

但你还是会犹豫,因为你没有用过,对它能给你什么样的反馈,这个东西会带来多少坑,你是没有底的。这种情况下,为什么要给本来就缺乏维护人手的数据中心引入新的风险?

我觉得,我们可以从一个新的业务开始,这个新的业务是“云端手机”。

手机应用的开发者都知道,Android SDK通过qemu在x86上模拟ARM的指令,从而模拟一台手机供开发者调试,这个对于一般的开发还是可以的,但要做大规模的测试,就有点难了。但如果你的开发机器本来就是ARM的,这个就完全不同了,这种情况下,qemu可以直接运行在KVM模式,相当于在本地运行,这可以获得10倍以上的性能提升。

有人可能会Argue说,现在其实也有x86仿真x86的Android虚拟机,但那种虚拟机能跑多少应用你们都清楚,这个世界有种东西叫NDK的。

这种云端手机首先对回归测试是很有吸引力的,你用真机测试,你能准备多少种不同大小的屏幕?你怎么模拟电源的不同状态?你怎么模拟GPS的不同位置?这些东西,对于虚拟机来说,不过就是个脚本的事情。

至于很多人想到的什么“刷单”这种无耻的事情,你们不要跟我谈,我这种正经人是一句都听不进去的。实际上我们不需要,用虚拟的手机集群可以做的正经事多了去了,最常见一种情形,应用市场对大批应用的回归测试,就需要手机集群来完成。

这种应用对数据中心引入的代价不高,因为它完全可以作为libvirt的一个connection,或者说,它自己就可以作为一个nova node,接受其他已有成熟的管理措施来管理,比如openstack的一整套或者基于K8S。

其实这个都不是我想讨论的重点。我是在考虑未来的一个趋势:服务云化,这一点已经成为现实了。但服务毕竟还是和最终客户关系不大的。但手机云化,就和每个个人息息相关了。

我先解释一下什么叫手机云化。手机云化就是用云上的虚拟机运行一台手机。一般情形下,它和任何人没有关系,仅仅在云上运行,你可以连看都不看它,它的显示仅仅是个虚拟的动作,所以它吃掉的计算资源仅仅是运算部分的。当你需要访问这台手机,你可以通过一台真实的手机attach它,这样它的显示就到你的机器上了,它的传感器数据(比如你的位置,手机的倾斜度,加速度之类)也从你的手机上获取。

在现实方面,它通常有两种技术,一种是屏幕压缩传输,就是所有的图层叠加在服务器上完成,然后压缩成特定规格的视频流,复原到手机上。另一个种技术是服务器仅仅对手机发送OpenGL原语,在手机上完成所有的绘图(使用手机的GPU能力),后者常用于高性能游戏这种要求低时延的环境。

手机云化可以带来什么?我觉得包括这些:

第一,把大业务量的应用放到强大的服务器集群中,强化了手机的能力。手机放多少个核,和服务器比都是渣渣,功耗在那里限制着呢。而提高功耗是不靠谱的,因为每台大电池容量的手机就是一个炸弹。你敢做出大容量的电池,航空公司就敢不让你上飞机。

所以,如果手机在云上,你随身的手机只需要完成交互,那些什么自动识别,自动归类啦,大部分都可以在云上完成了。也许你觉得直接按应用,用云存储也能接着这种问题。但云存储和直接手机上就是所访问的数据的整个体验是不同的。云存储做不到的事情,一台有100T存储空间,背后还有按需分配的4个1080Ti保驾护航的“云端手机”却是可以做到的。

能一辈子陪着你的是你云端的手机,你手中的,仅仅是你的手机灵魂的一个臭皮囊。

对于这个趋势,我猜很多人会担心私隐问题。私隐问题最后会怎么解决,我不知道,但现实是,你现在已经有无数的东西在云上了。

第二,BYOD。员工进入企业的工作区域。企业的信息不希望被员工的手机访问,员工的私人信息不希望被企业访问。很简单,进入企业网就直接连企业分配的云端手机,反正在企业网内部,带宽都是可保证的,该怎么干活怎么干活。离开企业,回到自己的生活,两者完全分离。

第三,沙箱测试。你对一个软件不放心吗?租台手机用3天来试用一下,用完就扔,不留痕迹。怎么样?

第四,备份。克隆手机即可备份

第五,远程协助。类似PC的远程协助功能,你打游戏打了一半过不了关,把手机屏幕推给男朋友给你过,过了又推送回来……

第六,辅助办公。用桌面连云手机,显示为桌面(类似华为Mate10的桌面模式),完成基本的办公工作。

手机的数量远远大于服务器的数量,如果打开手机上推的这个渠道,会有无数的可能性。各位拽着钱没地方花的云提供商们,不连几个机架来玩玩吗?


推荐阅读
  • 什么是堡垒机?堡垒机是一个主机系统,其自身通常经过了一定的加固,具有较高的安全性,可抵御一定的攻击,其作用主 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • SQL Server 2008 到底需要使用哪些端口?
    SQLServer2008到底需要使用哪些端口?-下面就来介绍下SQLServer2008中使用的端口有哪些:  首先,最常用最常见的就是1433端口。这个是数据库引擎的端口,如果 ... [详细]
  • css div中文字位置_超赞的 CSS 阴影技巧与细节
    本文的题目是CSS阴影技巧与细节。CSS阴影,却不一定是box-shadow与filter:drop-shadow,为啥?因为使用其他属性 ... [详细]
  • 都说Python处理速度慢,为何月活7亿的 Instagram依然在使用Python?
    点击“Python编程与实战”,选择“置顶公众号”第一时间获取Python技术干货!来自|简书作者|我爱学python链接|https:www.jian ... [详细]
  • 0x00端口渗透端口扫描端口的指纹信息(版本信息)端口所对应运行的服务常见的默认端口号.尝试弱口令端口爆破hydra端口弱口令NTScanHs ... [详细]
  • 前面刚有AWS开战MongoDB,双方“隔空互呛”,这厢又曝出2亿+简历信息泄露——MongoDB的这场开年似乎“充实”得过分了些。长期以来,作为“最受欢迎的NoSQL数据库”,M ... [详细]
  • 关于mysql原理与web系统开发的信息
    本文目录一览:1、在做web开发的时候,MySQL主要功能是什么? ... [详细]
  • 下图|通用型_企业用户如何选择合适的云服务器配置?
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了企业用户如何选择合适的云服务器配置?相关的知识,希望对你有一定的参考价值。随着网络飞速发展,企业上云已成为 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • 加密世界下一个主流叙事领域:L2、跨链桥、GameFi等
    本文介绍了加密世界下一个主流叙事的七个潜力领域,包括L2、跨链桥、GameFi等。L2作为以太坊的二层解决方案,在过去一年取得了巨大成功,跨链桥和互操作性是多链Web3中最重要的因素。去中心化的数据存储领域也具有巨大潜力,未来云存储市场有望达到1500亿美元。DAO和社交代币将成为购买和控制现实世界资产的重要方式,而GameFi作为数字资产在高收入游戏中的应用有望推动数字资产走向主流。衍生品市场也在不断发展壮大。 ... [详细]
author-avatar
mobiledu2502871817
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有