一文了解阿里一站式图计算平台GraphScope
这里说一下 AKF 扩展立方体,我觉得这个东西特别的好用,所以给大家介绍一下。 比如说在 Nginx 上配了很多的上游,上游默认使用的是 RoundRobin,不管你的上游有8核16G还是4核8G的,你都会配权重,配权重似乎它俩不一样,但是任何一个请求这两台都能够处理。所以它其实是复制过来的,用最小连接数,它关注的点是上游服务器的负载。 这是X轴,X轴的成本特别低,加机器就可以。但是到了Y轴和Z轴就不一样,他们开始是基于请来。比如说 MySQL 做读写分离,我看到了一个 select 的语句和 update 的语句,如果是 select 的语句,我就随便找一个 slave,找一个备库去访问,它又回到X轴了。 如果是一个 update,我可能就要进入主库,这就是读写分离。还有像 API Gateway 也是经常这样的,做代码重构以后,希望把用户类的、日志类的分到不同的集群去处理,这时候都是基于Y轴,Y轴的成本是非常高的。 Z轴就是分库分表,基本上是基于哈希,用户A的数据可能只能到服务器1,用户B的数据可能到服务器2。Z轴的成本不好说,比如说哈希算法,为什么说一致性哈希呢?因为你做这种基于哈希的负载均衡有很大的问题,请求的集合是近乎无限的集合,但是上游服务器的映射集合是非常有限的,有多少的服务器,你有多少个选择,就只能映射到这样的集群。
从大集群映射到小的集群,无论前面经过多少的算法,最后肯定得有求余的操作,没有求余的话,没有把它归纳到这么小的集合内。求余的话,就有一个问题,余数不能变,因为你的上游机器一旦出现宕机或者是增加的时候,余数变了,整个哈希函数就变,只要这个函数一变,那整个Z轴就会发生很大幅度的变化。 MapReduce 讲了很多,分为3步:数据分发、每个节点进行 Map 函数计算、输出以后合并。MapReduce 我们很多是在 SQL 来做,因为你用 SQL 的 Group by 的聚合计算,先天性的跟分发和规避能够对得起,无论是求标准差或者是平均值,也很容易去做并行的计算,这是可以做到的。当然如果有前后依赖关系那是没有办法做的。
MapReduce 还有一个特点,它跟数据源强相关,所以基本上 Java 生态在这块上是无敌的。原因是,大家的数据都放在中,所以数据是互联网公司的核心资产——数据都在这里,其他框架写得再好也没有用。 为了活下去,他们必须及时止损。 除此之外,更重要的原因在于运营商基站负载过重。 随着技术的成熟,我国4G基站早就已经达到几百万的规模。 而现有手机用户数量过于庞大,且每个基站都有着限定的频率资源,各运营商基站早已处于负荷运转状态。 如果这些手机用户还同时长期使用流量上网,基站运转压力就会越积越大,拉跨网络速度,甚至导致系统崩溃。 这就是为什么有时候手机信号明明满格,网络却连接不上的原因。 所以,4G无限流量套餐,有缘再见。 4G做无限流量任务失败,更不用说5G了。 随着5G技术慢慢普及,使用人数也越来越多,也就意味着5G基站这个水池也开始汇入越来越多的水。 然而,5G目前运行情况并不是很理想: 一、目前中国现有的5G基站总体数量远远不及4G基站的五分之一; 二、单个5G基站覆盖范围同样比不上单个4G基站覆盖范围; 三、5G网络在运转过程中还需要基站更多的频率资源支持。 总的来说,基站运转工作并不轻松。 在此基础上,如果运营商执意开通了5G无限流量套餐,允许大量用户长期使用5G流量上网,只会给基站带来更大的运转负担。
此外,所谓4G无限流量套餐,不限量但限速。 (编辑:信阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |