语雀桌面端作为语雀为用户提供的生产力工具,上线两年多来一直保持高频的迭代和健康的业务增长。本次主要介绍我们在做桌面端时的一些技术架构思考和实践,同时也将分享我们沉淀的一些通用桌面应用解决方案和经验。
UC Berkeley认为Serverless架构的出现过程类似于40多年前从汇编语言转向高级语言的过程,在未来Serverless架构的使用会飙升,或许服务器式云计算并不会消失,但是将促进BaaS发展,以更好地为Serverless架构提供支持。
本次发布的 Spring Cloud Alibaba 2.2.9.RELEASE 和 2021.0.4.0 两个新版本,分别基于社区 2.2.x 和 2021.x 两个主干分支进行的构建发布,其中 2.2.9.RELEASE 版本通过首次给 Spring Cloud 生态带来了阿里巴巴内部使用多年的异地多活能力,对规模较大的中大型企业构建高可用应用提供了参考解决方案。另外,我们在 2.2.9.RELEASE 和 2021.0.4.0 版本中提供了服务的 IPv6 地址注册与调用能力,可帮助应用实现 IPv4 向 IPv6 的迁移。
目前在云上的容器化应用场景选择存储方案时,通常会使用块存储(EBS),文件存储(NAS,CPFS,DBFS)和对象存储(OSS)三种,POSIX 语义的文件系统是面向容器存储使用场景最直观和最友好的方式,通常也是容器场景下使用最多的存储访问方式。另一方面,为了实现集群级别的存储编排能力,K8s 在维护容器组(Pod)的生命周期中会将依赖的存储卷以文件系统的形式挂载到容器内,从而从应用角度可以无差别地读写块存储、文件存储和对象存储的外置存储。
每天凌晨,该应用所依赖的类目富客户端执行新老版本数据包切换时,应用提供的服务抖动非常明显,表现为大量接口超时(耗时100ms -> 3-5s),服务成功率明显下降(100% -> ~92%),RPC线程池活跃线程数上涨(50 -> ~100),抖动最长可持续20s,影响到商品发布、商品详情页等依赖CPV数据的关键业务场景;且夜间发生抖动,时间点不固定,抖动发生时开发同学也难以关注到,影响面较为不可控,因此需要排查并彻底解决此问题。
包大小是衡量APP性能的一项重要指标,它直接影响用户的下载点击率(包太大不想下)、下载安装成功率(下载慢不用了)、APP卸载率(太占空间先删掉)。包大小的计算逻辑很简单,它是各种类型的文件占用磁盘大小相加。APP瘦身的技术却很复杂,代码文件的复杂度和编译器策略决定了可执行文件的大小,业务功能和工程架构决定了代码文件的复杂度。iOS APP瘦身,需要掌握的技能有XCode构建技术、LLVM编译器技术、CocoaPods构建技术、图片压缩技术、持续集成技术。本文总结提炼了Alibaba.com App的瘦身的技术和策略,系统化地介绍APP瘦身的业务价值、分析技术、瘦身技术、防劣化机制,让读者可以系统化地了解APP瘦身的技术体系。本文还基于实践经验,介绍各种瘦身技术的ROI,让读者可以避免踩雷,将资源浪费在效果不佳的技术上。希望对你有所帮助。
安全是产品的底座,是体验的基础,也是企业的一项核心竞争力。安全生产是一项系统性的工作,同时也是一件比较琐碎的事,需要做方方面面的考虑尽一切可能保障系统安全稳定运行。个人之前一直负责商品的稳定性工作,在这方面有比较多的经历和实践。