哔哩哔哩Android客户端基于依赖注入实现复杂业务架构探索
B站作为一个视频网站,视频播放页作为用户的核心消费场景,其重要程度可想而知。目前APP客户端的主要播放页场景主要有UP主稿件播放页,Story模式播放页,直播播放页跟番剧影视播放页。每一个都是大量业务的汇总点作为用户核心消费场景,需要在承接各种业务到播放页的转化,还要负责承接各业务在播放页的功能展示。可以说播放页代码复杂度属于客户端最高的代码之一,这不仅仅是因为播放页本身的功能复杂,还因为播放页往往需要融合大量外部业务功能。复杂的功能自然会产比较高的代码复杂度,而高代码复杂度又往往意味着高代码维护成本。
滴滴线下仿真环境实践:从方案设计到持续运营
滴滴作为一家有一定体量的互联网公司,也会遇到类似的问题,本文将介绍滴滴的测试环境选型,及我们如何实现快速、低成本的建设“无限套”测试环境。
大报文问题实战
大报文问题,在京东物流内较少出现,但每次出现往往是大事故,甚至导致上下游多个系统故障。大报文的背后,是不同商家业务体量不同,特别是B端业务的采购及销售出库单,一些头部商家对京东系统支持业务复杂度及容量能力的要求越来越高。因此有必要把这个问题重视起来,从组织上根本上解决。
除了缓存,性能优化还可以这么搞?
软件设计开发某种意义上是“取”与“舍”的艺术。关于性能方面,就像建筑设计成抗震9度需要额外的成本一样,高性能软件系统也意味着更高的实现成本,有时候与其他质量属性甚至会冲突,比如安全性、可扩展性、可观测性等等。
虚拟号在转转实践与应用
总之,虚拟号作为一种创新的电话号码服务,为用户提供了更加灵活、安全和便捷的通信方式。它在个人和企业通信中都有着广泛的应用场景。
流程图&时序图绘制小tips|得物技术
在日常工作中,无论是产品经理写PRD或是开发、测试同学写技术方案、整理业务文档等场景都会用到诸如流程图、时序图、用例图、泳道图等形式的图来辅助阅读者理解。相信平时工作中有画图需要的读者都有这样的感受:有些图制作过程非常简单但逻辑清晰又不失美观,而有些图费时费力制作繁琐,但效果却不是特别惊艳,这其中的底层逻辑尤为关键,毕竟作图也是一门艺术。本文将会以直播商品讲解业务场景出发,给大家分享一些画图小知识。
加速未来!汽车之家App应用性能优化总结与后续展望
汽车之家App作为汽车之家链接全球5亿用户的重要承载工具,是汽车之家的核心业务之一。在激烈的市场竞争中,为广大用户提供优质的产品和服务是我们的核心竞争力。面对日益增长的用户需求和技术挑战, 满足用户对卓越体验的追求, 客户端研发部制定了:"铸精品,释产能,启未来"的基本方向。"铸精品"强调提升产品质量和用户体验, "释产能"代表着充分利用现有资源和能力,提高研发和交付的效率, "启未来"目标是积极关注行业趋势和创新技术,不断探索前沿领域,积极引入新技术和解决方案。本次分享的主题是我们在"铸精品"方向的努力,并对我们的优化工作进行详细总结。同时,我们也展望了未来的发展方向,继续致力于提升客户端的性能和用户体验。
高达平台 - 全链路低代码解决方案
建设低代码平台的目的,就是通过可视化的方式,加上可复用的建设能力,用较少的投入、以较快的速度来交付应用程序。 我们通过aPaaS架构思路,复用已经实现了的开发能力,解构业务模型,形成更通用的能力,对业务进行快速编排。实现低代码,甚至部分无代码的快速定制应用。将开发模式从做加法,改进为做乘法,48小时内快速定制大部分基础应用。 我们不单需要解决今天的可见需求,同时还需要解决明天潜在的问题。实现更少的投入,更聪明的办法,建设更好的产品,产生更大的价值。
分布式Session解决方案详解(4大常用方案)
本篇我就来谈谈分布式Session的4大解决方案
三类代码协同模式,你要如何选?
三类代码协同模式,Git大神告诉你到底如何选。
得物推荐引擎 - DGraph
随着得物业务规模的不断增加,推荐业务也越来越复杂,对推荐系统也提出了更高的要求。我们于2022年下半年启动了DGraph的研发,DGraph是一个C++项目,目标是打造一个高效易用的推荐引擎。推荐场景的特点是表多、数据更新频繁、单次查询会涉及多张表。了解这些特点,对于推荐引擎的设计非常重要。通过阅读本文,希望能对大家了解推荐引擎有一定帮助。为什么叫DGraph?因为推荐场景主要是用x2i(KVV)表推荐为主,而x2i数据是图(Graph)的边,所以我们给得物的推荐引擎取名DGraph。
随机高并发查询结果一致性设计实践
面对高并发调用的调用场景,针对不同的业务场景,处理方式往往各有不同,本文针对实际的业务场景,通过实际业务场景分析,调用量分析,最终采用合理的技术方案,完成实际的业务场景。
浅谈统一权限管理服务的设计与开发
本文详细探讨了统一权限管理服务(MPS)的设计与开发,针对企业内部多平台权限管理混乱的问题,提出了一套综合RBAC、ACL、DAC权限模型的解决方案。文章从需求分析、技术选型、功能设计等方面全面介绍了MPS的构建过程。在平台&节点管理方面,MPS支持多种业务平台接入方式,同时提供节点管理和组织管理功能。权限管理模块涵盖历史权限导入、权限分配、鉴权服务等。申请&授权模块实现了线上申请、审批流程和自动授权功能。权限审计&回收模块支持权限数据下载、操作日志记录以及权限续期与回收。MPS的成功应用于百度内部展示了其卓越性能与潜力,有望为未来实现更高效的企业权限管理提供强有力的支持。
阿里架构师必备的6六大能力总结(建议收藏)
进阶成为架构师是大多数程序员们的梦想,架构师从广义上可分为软件架构师、系统架构师,软件架构师是程序员最容易突破、最可能进阶的一条职业发展路径,本篇重点分享架构师必备的6大能力。
聊聊 Velocity
本文把velocity工程化的心路历程记录下来,主要给大家描述我们在解决问题过程中的一些感悟,同时文中也详细介绍了具体方案。
动态业务架构演进
总的来说,哔哩哔哩动态和直播功能为用户提供了更加多元化的内容和社交体验,让用户可以更加丰富地在平台上表达自己的想法和兴趣,并与其他用户、视频创作者进行互动和交流。
得物自研API网关实践之路
老网关使用 Spring Cloud Gateway (下称SCG)技术框架搭建,SCG基于webflux 编程范式,webflux是一种响应式编程理念,响应式编程对于提升系统吞吐率和性能有很大帮助; webflux 的底层构建在netty之上性能表现优秀;SCG属于spring生态的产物,具备开箱即用的特点,以较低的使用成本助力得物早期的业务快速发展;但是随着公司业务的快速发展,流量越来越大,网关迭代的业务逻辑越来越多,以及安全审计需求的不断升级和稳定性需求的提高,SCG在以下几个方面逐步暴露了一系列的问题。
转转短链平台设计与实现
1 背景介绍 2 工作原理 2.1 短链接生成与存储 2.2 短链接返回与传播 2.3 用户点击与跳转 3 核心算法 3.1 哈希算法 3.2 分布式 ID 3.3 Base62 编码 4 安全与防护 4.1 长链接合法性校验 4.2 重复生成短链接防护策略 4.3 短链接有效性验证 5 系统性能优化 5.1 数据库索引 5.2 缓存应用 5.3 号段模式优化 5.4 分表策略 5.5 业务监控 6 总结
一次网络请求中的流量分发过程
现代的企业级或互联网系统往往需要进行流量规划,达成透明多级分流。流量从客户端发出到服务端处理这个过程里,流经的与功能无关的技术部件有(达成“透明分流”这个目标所采用的工具与手段):客户端缓存、域名服务器、传输链路、内容分发网络、负载均衡器、服务端缓存。透明分流带来的价值:高可用架构、高并发。本文主要介绍流量规划中的网络请求过程及: 第一部分:对一次网络请求的过程作简要介绍,然后介绍目前了解到的前端网络组件搭配方式、后端网络组件搭配方式 第二部分:介绍LB负载系统 、vip与rip 的映射关系 第三部分:介绍内网域名解析及公网域名解析
电商订单履约-卖家发货演化史|得物技术
订单的履约之路就是从发货开始,看似简单的发货功能,其背后却藏着许多的小秘密。