脑洞文之去火星搞IT!
前两天刚看了《火星救援》,为剧情称赞之余,突然脑洞大开,如果人类有一天登录火星啦,到那时候,怎样做好星际互联网的通信以及网络运维工作肯定是一个必须要考虑的问题,既然如此,那我们就先臆想下如何建设火星互联网
第一个要解决的问题就是星际通信,由于火星与地球的距离随着两颗星球环绕太阳的运行时间不同也不断的变化着,理论上来说,地球和火星最近点将发生于火星位于距离太阳最近点(近日点)而地球位于距离太阳最远点(远日点)。这样两者之间的距离只有5460万千米。然而,这在整个历史中从未发生过。两者最近距离发生于2003年,相距5600万千米。
当两颗行星都位于距离太阳最远点,且位于太阳的两边时,两者之间距离最远,大约为4.01亿千米。两者的平均距离为2.25亿千米。这么远的距离,即使是光速飞行,要实现二者的通信也要花上以下时间:
光速约为299.792千米每秒。因此,从火星表面发出的光到达地球的时间分别为:
最近距离:182秒,大约3分钟。
最远距离:1342秒,大约22分钟。
平均:751秒,大约12.5分钟
我去, 连光都要跑这么久,更别说宇宙飞船了,在没出现最新黑科技之前,目前若将人类送上火星,需要飞行6-8个月的时间,想想也是醉了,我猜想,在第一批登录火星的人类中,肯定有一个是需要会IT的,说不定那个就是你噢,哈哈。
那么问题来了,既然2个星球之前的通信延迟基本在10-20分钟,那假如你把网站部署在地球,当新上线一个新的页面时,火星移民在访问时会在20分钟之后才能刷出来呢,我擦,即使访问地址上最慢慢的网站也不至于这样呀,并且如果你给火星人发条消息,你在20分钟后才能收到回复,太慢了、太慢了, 那肿么办呢?因此如何尽最大可能降低双方通信延迟是一个挑战, 哈哈,不过啥事也难不倒我们开挂的人类,既然2者的光速距离是平均12分钟, 往返通信一次就是24分钟,那如果我在2个星球的中间位置放置一颗中继卫星,然后让地球和火星均直接与中继卫星通信,火星和地球均不断的从中继卫星取来自对方的新消息,这样不就可以节省了一半的距离了?(当然这是在不考虑发卫星跑这么么远的成本的情况下),时间虽然节省了一半,但依然要花12分钟,这是个目前无法逾越的鸿沟,既然如此,那在通信协议上就肯定不能用TCP/IP这种啦,否则光建立个连接就要来回3次,直接36分钟都过去啦。。。, 我想NASA的科学家们肯定想过这个问题并设计出了相应的通信协议(好像有一个星际通信协议叫DTN),在星际通信中如何既能保证数据不丢失又能实际数据的最快传输是个值得好好思考的问题。
好了,假定星际通信的问题完美解决了,现在要想一想如何在火星上部署我们的IT系统啦,为了保证人类在登录火星后可以长期居住 ,像《火星救援》中那样的火星基地是必不可少的,像电影中的那个基地目测至少也得三四百平米吧,这么大一坨基地要运到火星去可没那么容易,按照NASA最新在开发的载入飞船“猎户座”不超过10t的运量来算,把建基站所需的所有材料都运过去也得10来次吧,往返一次要1年的时间,只有一艘船的话,那运完要花5年时间,图样图森破(too young too simple),人在太空面前真是好无奈。不过要是美国政府愿意给NASA更多的钱的话,建10个飞船一同过去的话,6个月一次性就能搞定啦哈,这就叫并发呀!但别高兴的太早,为了最大程度保证人类登录火星后的生存问题,我想空间站一定是让机器人先帮着建立起来再把人送过去,如果送人过去建站的话这个成本以及技术难度就太高了,你要保证人即能在基站没有建成之前的安全生存真心不是件容易的事噢,相比让机器人干这个事要相对容易,你不城要考虑机器人的吃喝拉撒问题,但机器人的缺点就是不够灵活,不能从容处理各种紧急事件,加上与地球的通信至少需要10分钟以上,所以如果发生了紧急状况,人类在地球上也只能无奈啦,but anyway既然人类都要到火星建基站了,相信机器人的智能水平也要很nb啦,但既使我们的机器人很智能啦,送到火星基站材料的组装方式还是需要越简单越好,跟做IT是一样的,一定要使你的IT架构越简单越好,越简单越越不容易出问题,出了问题也才越容易排查。
假设上面的计划都一切顺利,我们的火星基站终于建立起来啦, 基站建立起来后,我们这些NB的机器人们还需要为第一批火星移民的吃喝操心,假定火星确实存在液态水的话(NASA近期宣布火星上极有可能存在液态水),那机器人们应该还需要把水源提前运进基站,并且像电影中马克那样,在基站里种帮着种点土豆、蔬菜啥的,这样植物即可以产生氧气又能供基站工作人员的吃,简直棒棒的,不过这就要求我们的机器人要非常聪明才行,一定要做成可编程并可远程升级的,这样我们就可以在地球远程定期给升级个固件啥的。这里再多说两句机器人的设计需要考虑的问题,机器人必须能做到实时跟基站通信,基站又实时跟地球汇报数据并接受指令,这样地球发过来的控制指令就可以通过基站转发给各个机器人,机器人在做固件升级的时候很有可能会出现升级错误的问题,这种情况下必须允许机器人能自动回滚到上个正常版本。
等我们的火星基站在机器人的精心照料下顺利的度过几个月的测试期后,是时候该动真格的把人送过去啦,第一批移民者必定个个都是各领域的专家,如果他们能在火星自给自足存活一到两年,那就真心意味着火星移民这事成啦!然后地球人就可以建第一个火星基地的步骤开始进行大规模复制,相信不出几十年,火星上的长驻居民即可达几万人,第一批火星土生土长的火星人也会诞生,想想好激动呐。(这个过程在IT自动化部署中叫灰度发布哈哈)
按照人类现在的科技发展水平预测,要把火星改进到如地球一样适宜人类居住,需要5000年的时间,因此在移民的前几百年里,生活在火星必将是艰苦的,人们只能在狭小的各个火星基地里活动,但既使这样,想着能有一天能在火星看日出,我觉得人类一切为踏上那课红色星球所做的努力也是值得的!
之前看过一篇人类对未来科技预测的文章,在2080年左右,人类将可真正实现冷冻休眠,这就意味着,我们可以通过休眠实现穿越到未来啦,不想在这个世界活了,直接冷冻500年,哈哈。 并且Google正在研究人类导致衰老的基因,我记得Google一篇报道中说的是,至今为止,没有证据证明衰老是人必须经历的过程,也就是说,通过发现导致人类衰老的基因并改变它,是有可能实现人的长生不老的!到那个时候,活个500岁还是年轻人哈哈。
如果上面的休眠技术真正实现啦,说不定我们80后们还有机会跑到火星上去看一下撒,死在火星上真是一件无比浪漫的事情!
转载于:https://blog.51cto.com/3060674/1722447
脑洞文之去火星搞IT!相关推荐
- c# socket接收字符串_socket通信很难?这一文让你轻松搞定!
目录 概述 TCP/IP协议.UDP协议 Socket是什么 socket通信流程 socket编程php代码实战 php7进阶到架构师相关阅读 概述 这是关于php进阶到架构之php7核心技术与最佳 ...
- 盖茨来了:比起去火星,地球有些事更紧迫
2023年6月14日晚,比尔·盖茨在微博更新了一条消息,他写道:我刚降落在北京,这是我2019年以来的首次访问.盖茨基金会与中国伙伴合作应对全球健康和发展挑战已经超过15年.我非常高兴能与中国的伙伴们 ...
- 一文让你彻底搞懂AQS(通俗易懂的AQS)
一文让你彻底搞懂AQS(通俗易懂的AQS) 一.什么是AQS AQS是一个用来构建锁和同步器的框架,使用AQS能简单且高效地构造出应用广泛的大量的同步器,比如我们提到的ReentrantLock,Se ...
- 生态伙伴 | xiaopiu入驻飞书,助你高效创作,从原型到文档一站搞定!
本期生态伙伴「xiaopiu原型」作为首批入驻飞书的专业设计工具,与飞书深度集成.结合飞书,将产品设计环节无缝嵌入用户整体的工作信息流,让产品方案的交付和沟通更加自然和高效,为企业提供一站式产品原型设 ...
- 今晚19:30直播 | 这些国家为何今年扎堆去火星?航天专家庞之浩揭秘
从儿时熟悉的"马丁叔叔",到近年热映的<火星救援>,火星一直寄托着人类无数太空梦想,甚至被视为人类"太空家园"的重要候选. 为此,60年间,人类进行 ...
- 一文带你彻底搞懂i++和++i的区别,谁的效率更高?
作者简介:Codebowl靓仔,学妹的工具人,C++开发误入数据开发,梦想30岁退休的靓仔就是我啦. i++和++i对于初学者来说,一直是一个特别容易搞混的内容,相信很多人现在也没有完全搞清(作者初学 ...
- 不是只有宇宙飞船能带你去火星,Go也可以!
对于一门只有十年历史的新语言来说,Go 的发展势头可谓是相当迅猛,容器界的扛把子 Docker 就是用 Go 写的, 因此不少程序员开始学起Go来,而今天,异步君也是要带大家走近"小地鼠&q ...
- java非主流火星文输入法_火星文转换器,火星文转换器在线转换
火星文转换器在线转换 猫旅人 火星文是什么 火星文转换器怎么转换 你说的这个火星文其实就是一些奇形怪异的字符了,在一些个性签名还有昵称里面会经常看到的一些怪异字符,这类其实就是火星文了. 这种火星文是 ...
- lambda表达式java项目常用_一文带你彻底搞懂Lambda表达式
1. 为什么使用Lambda表达式 Lambda是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递).可以写出更简洁.更灵活的代码.作为一种更紧凑的代码风 ...
最新文章
- 手下两个应届生,一个踏实喜欢加班,一个技术强挑活,怎么选?
- Java8 stream filter map
- appium+python自动化项目实战(二):项目工程结构
- redis stream java消息队列_Redis 异步消息队列与延时队列
- 贪心算法求解TSP问题(python)
- Microsoft Dynamics 365 之 味全食品 项目分享和Customer Engagement新特性分享
- 织梦html底部文件,织梦dedecms程序如何给网站底部添加360监控的步骤
- 关于java中求和的方法,用可变变量来解决这个问题
- Axure RP 9(附授权码+安装教程)
- Mac版OneNote同步报错E000006B ctctv
- 我是谁?——第一次CSDN发文
- 软磁材料的环境敏感性
- Ultra Light Support
- 数据结构——图的邻接表实现
- MM41/MM42/MM43零售物料主数据BAPI创建示例(WRF_MATERIAL_MAINTAINDATA_RT)
- IOS开发之——硬件开发-蓝牙(07)
- 浅谈exp与expdp的区别
- 在真实设备上进行Android调试
- GIS坐标中的Z值和M值
- 太晚睡觉3点左右 深度睡眠法
热门文章
- 广告主流量主怎么申请(微信)
- html5 workers,HTML5 Web Workers
- 使用node连接MongoDB的工具安装及配置
- (转载)年终总结 算法数据的思考 结尾彩蛋
- Python周刊505期
- android 图片底部波浪线,如何添加文字下面的红色波浪线在Android的TextView的
- Visio(一) Visio 键盘的上下左右快捷键 没办法移动图标了:取消掉Scroll lock指示灯即可。
- Word无法打开该文件,因为文件格式与扩展名不匹配
- 安装elasticsearch后,本地访问不了
- eclipse 打包springcloud 项目出错怎么解决