分库分表是大型互联网应用经常采用的一种数据层优化方案,常见的分库分表中间件如 sharding-jdbc、mycat 都已经比较成熟,基本上可以应对我们一般的分库分表需求。做过分库分表的同学应该知道,在给业务系统做分库分表改造过程中,难的不是如何使用这些组件进行分库分表,而是如何将非分库分表的系统平滑的升级成一个分库分表的系统,升级期间业务不可暂停,升级过程及升级后风险可控,这个过程就像是给飞行中的飞机更换引擎,处理不好会产生重大的业务事故。去哪儿网机票辅营业务就经历过从主从读写分离系统升级到分库分表系统的过程,并在多次迭代过程中形成了一种与业务轻相关的平滑的分库分表方案,后续业务升级分库分表只需通过配置切换就可以将单库单表系统瞬切至分库分表系统。
直播互动玩法,早在2014年就曾有人在Twitch平台进行尝试,在这一类玩法中,直播间观众可以通过弹幕指令共同操纵主播的游戏内容,在国内被称为“弹幕互动玩法”。 2021年H2,随着修勾夜店在B站的爆火,直播弹幕互动玩法如雨后春笋般出现,直播技术团队也开始了对互动开放技术体系的探索。 2021年底,直播开放平台立项,旨在基于B站的内容生态和直播技术,面向行业开发者开放核心直播技术能力,打造用户、创作者和平台多方共赢的开放生态。 2022年H1,围绕直播间互动玩法和游戏化互动场景,直播开放平台迅速落地,提供了直播间数据开放、API支持、SDK支持、定制化支持等技术服务,为直播互动内容生态建立了坚实的基础。 本文主要介绍直播技术团队在互动开放生态演进道路上的经验与思考。
在本文中,作者将借鉴《实现领域驱动设计》的做法,介绍领域驱动设计的基本概念的同时,用一个虚拟的公司和一个虚拟的项目,把领域驱动设计进行落地实践。
Spark 是一个开源的数据处理框架,能快速处理大量数据的转换。其高性能来自Spark的分布式框架,通常一个任务会被平均分配,跨机器集群工作。但Spark本身并不管理这些计算机,他需要一个集群的管理器来管理集群。Spark定义了需要执行的任务,而管理器决定了任务将如何被分配被执行,由此可见其重要性。这个管理器需要负责任务的接收、资源的调度和分配、任务的启动、TaskTrack监控等。 传统上,我们会选择Hadoop YARN来作为资源调度管理器,并且使用spark-submit提交任务。但随着云计算的推广与容器的流行,因其需要依赖于HDFS的本地环境,YARN的部署方式显得捉襟见肘。在技术的递进下,从Spark3.3.1开始正式推出了Kubernetes的资源管理方式,其设计框架与云计算紧密结合,将Spark应用从本地HDFS集群中解耦合,赋予其更多的灵活性。
K8s 通过 Ingress / Gateway API 将网关标准化,逐步将安全网关、流量网关、微服务网关内聚,解决从单体到微服务到云原生多层网关的复杂度,合久必分,分久必合,多层网关已成过去,网关多合一成潮流,成为 K8s 开发者和微服务开发者共同关心的话题。
随着数据量和数据复杂性的不断增加,越来越多的企业开始使用OLAP(联机分析处理)引擎来处理大规模数据并提供即时分析结果。在选择OLAP引擎时,性能是一个非常重要的因素。 因此,本文将使用TPC-DS基准测试的99个查询语句来对比开源的ClickHouse、Doris、Presto以及ByConity这4个OLAP引擎的性能表现,以便为企业选择合适的OLAP引擎提供参考。