Java线程和操作系统线程什么关系
|
4. 办公软件的云时代 * 十年前:Office 2010 * 十年后:Office 365 作为生产力工具里的TOP1,微软Office一直是办公软件的霸主。当年的Office与现在没有太多区别,Ribbon界面在当时还算是一个新名词。那时的Office已经形成了基本的功能框架,换言之,你现在看到的模块当年就已经存在。
十年之后,Office搭上了“云”快车,不仅数据协同更加高效,部署方式也更为灵活。云端、本地,Office的功能不再局限于大版本升级,而是采取了类似Win10那样的定期更新。同时人们购买Office的方式也更加多样化,既可以根据终端数,也可以根据使用时间任意组合。 3. 00后时代的聊天江湖 * 十年前:QQ * 十年后:微信 / 陌陌 / 探探 / Soul / 高颜
尽管聊天主体由90后变成了00后,但不得不说,人们对于聊天软件的需求并没有多少改变。十年前是QQ的时代,尽管也有一众竞争对手,但腾讯的地位几乎无人能敌。十年后,微信在移动市场取代了QQ,观众们的选择也更加多元化,陌陌、探探、Soul、高颜……市场正在被一步步细分。那么再过十年呢,会不会有新的软件取代它们?或许就是留给我们的最大疑问! 再来说一个最重要的概念。Kafka解决副本之间的同步,采用的是ISR,这是一个面试Kafka必考的点之一。 ISR全称"In-Sync Replicas",是保证HA和一致性的重要机制。副本数对Kafka的吞吐率是有一定的影响,但极大的增强了可用性。一般2-3个为宜。 副本有两个要素,一个是数量要够多,一个是不要落在同一个实例上。ISR是针对与Partition的,每个分区都有一个同步列表。N个replicas中,其中一个replica为leader,其他都为follower, leader处理partition的所有读写请求,其他的都是备份。与此同时,follower会被动定期地去复制leader上的数据。 如果一个flower比一个leader落后太多,或者超过一定时间未发起数据复制请求,则leader将其从ISR中移除。 当ISR中所有Replica都向Leader发送ACK时,leader才commit。 6. 消息系统的作用 说了这么多,是时候把消息队列的作用,使用计算机的术语解释一下了: 削峰 用于承接超出业务系统处理能力的请求,使业务平稳运行。这能够大量节约成本,比如某些秒杀活动,并不是针对峰值设计容量。 缓冲 在服务层和缓慢的落地层作为缓冲层存在,作用与削峰类似,但主要用于服务内数据流转。比如批量短信发送。 解耦 项目伊始,并不能确定具体需求。消息队列可以作为一个接口层,解耦重要的业务流程。只需要遵守约定,针对数据编程即可获取扩展能力。 冗余 消息数据能够采用一对多的方式,供多个毫无关联的业务使用。 健壮性 消息队列可以堆积请求,所以消费端业务即使短时间死掉,也不会影响主要业务的正常进行。 但是,由于Kafka是个优秀的小伙,它内卷的非常可以,就能做更多的事情。它的本分范围更加大,包括但不限于:
下面是一个日志方面的典型使用场景。 (编辑:孝感站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
