华为ArkUI-X跨平台技术探索

本文讨论了华为 ArkUI-X 跨平台技术,包括背景、开发环境搭建、创建跨平台工程、图片浏览功能案例、跨端技术、面临问题及总结等方面内容。…

基于沉浸度模型预估的广告动态展示

本文主要介绍我们在用户侧建模的首次探索和实践。经过实验分析,取得了初步的结果,在核心指标人均阅读时长、DAU上带来了显著的提升,验证了整个方向的可迭代性。…

AIGC业务平台

AIGC平台融合前沿的人工智能技术,包括但不限于生文大模型、生图及视频模型,致力于构建一个高效稳定的AIGC工作流程。我们的目标是通过这些技术提升内容生产的效率,同时降低成本,为业务场景提供强有力的支持。…

团建:商业化与作家平台天平之旅

在这个秋意渐浓、枫叶如火的季节里,我们团队在2024年11月30日这个阳光明媚的周六迎来了一次特别的团建活动——前往苏州天平山赏枫,并在阳澄湖畔享受美食。这次旅行不仅加深了同事间的了解与情谊,也让我们有机会远离城市的喧嚣,沉浸在大自然的怀抱中。…

Go1.23 糖果 —— iter 迭代器

@李天鸣:本文介绍了 Go 1.23 引入的 iter 迭代器,然后通过案例展示了基础的使用以及函数式的方式,最后简述了实现原理与两种迭代模式。从代码的可读性来看,迭代器增加了代码的理解成本。不过从“对象”的角度来分析,迭代器其实有助于代码封装维护,因为它将分散的逻辑内聚到一起,并且提供了统一的消费模式。…

Go性能优化:基于 Pyroscope 的 PGO 最佳实践

性能监控与优化是现代软件开发中不可或缺的一环,尤其是在分布式系统和服务端应用中。通过有效的性能监控工具,开发者能够快速定位并解决性能瓶颈,从而提升系统的响应速度和用户体验。继《使用 Pyrscope 结合 Holmes 加速找到服务瓶颈》之后,Pyroscope 在我们的团队中发挥了重要作用。例如,在 ADX 服务中,通过对深拷贝操作的优化,实现了性能提升 10%的目标;在配置中心方面,我们也通过性能监控发现并解决了多个关键瓶颈。 然而,尽管 Pyroscope 和 Holmes 已经在性能监控方面取得了显著成果,但仍存在一些不足之处。首先,目前只有 Holmes 异常上报机制,缺乏正常运行时的数据上报,这使得在排查问题时缺乏对比基准。其次,随着 Go 语言版本 1.21 的发布,Profile-Guided Optimization (PGO) 已经成为标准特性之一,但 Holmes…

七猫自研机器学习平台

七猫小说APP内容推荐的精准度,依赖策略算法的持续迭代,预估模型是算法的核心能力。此前,七猫各项推荐业务接入模型需要一定的学习成本,且各项业务模型独立开发,不同业务间的模型能力不能快速协作和复用,无法形成合力,造成一定的人力浪费。针对这些痛点,我们基于开源框架,自主建设了一个机器学习平台,从特征、训练、部署等方面简化模型接入流程,将通用的数据、基建进行统一,提升模块的复用能力,减少重复开发和人力资源浪费。…

全托管 StarRocks 在七猫的应用和实践

七猫数仓团队主要的职责是承接七猫各条业务线的离线数据开发、实时数据开发、指标建设、数据治理等工作。现在七猫有多套全托管 StarRocks 集群在生产环境投入了使用,部分 StarRocks 集群从 EMR StarRocks 集群逐步升级成为全托管 StarRocks 集群。据不完全统计,数据治理前离线数据加实时数据,总数据量大约在 20PB 左右。那数仓团队是如何管理这些数据,支持各条业务线的用数需求的呢?…

Java+MotionEvent实现埋点自动化

本文旨在帮助测试人员“0”代码完成UI自动操作以及埋点自动校验,基于现状,埋点测试以及每次发版需要花费大量时间验证相关埋点,并且随着业务发展,埋点数量只会越来越多,很难做到每次发版将全部埋点回归验证一遍,虽然线上有埋点数据监控系统,但是发现埋点数据异常时已处于外网阶段,因此需要一套机制降低埋点问题逃逸率,同时降低测试负担,提高测试效率。…

基于Jenkins、Apifox和GitLab实现自动化测试

在现代软件开发实践中,快速迭代和高质量交付的需求日益增长。为了满足这些需求,测试团队必须采用高效的工具和方法来确保软件在整个开发周期中的质量和性能。自动化测试作为一种有效的质量保障手段,能够帮助团队在早期发现和修复缺陷,减少手动测试的负担,提高测试的覆盖率和准确性。Jenkins、Apifox和GitLab的组合为自动化测试提供了一个强大、灵活且高效的解决方案。 一、概述 如下图所示,本课题将详细阐述运用GitLab的触发功能(当代码被推送到GitLab以后)触发Jenkins自动构建和部署,接着运行Apifox的自动化脚本,运行完成后发送通知给飞书,由飞书机器人把结果推送给相关人员的整个过程,配置以及实际应用。 使用这一组合进行性能测试有很多优势: 自动化测试流程:Jenkins可以根据代码的提交自动触发测试,使用Apifox执行API测试用例,并将测试结果反馈给开发和测试团队;快速反馈和问题定位:自动化测试可以快速提供反馈,帮助团队及时发现和定位问题,从而减少修复成本;持续集成和部署:Jenkins支持持续集成和持续部署,确保软件质量的同时加快软件交付速度;文档和协作:Apifox生成的API文档可以实时更新,与团队成员共享,提高沟通效率;版本控制:GitLab的版本控制功能确保代码变更的可追溯性,同时支持代码审查,提高代码质量;可扩展性和可维护性:随着项目的增长和变化,自动化测试用例和流程可以方便地进行扩展和维护,适应不断变化的需求。二、Jenkins部署 1、安装插件 在Jenkins中安装GitLab插件,…

读懂前端「性能优化」

背景随着互联网的发展,用户对网页加载速度和交互体验的要求越来越高,前端性能优化是提高网页性能的关键,性能优化是前端开发避不开的话题,一个完美的网站必定是能够给用户提供更优的体验。本文将介绍一些常见的前端性能优化技巧,帮助开发者提高网页加载速度,提升用户体验。 一、性能优化的本质 前端性能优化的本质在于提供更快速、更可靠、更高效的用户体验。优化网站性能不仅仅是为了让网站加载更快,更是为了提高用户满意度、降低跳出率、提升转化率,并最终实现业务目标。 二、基于chrome浏览器分析的性能优化指标 2.1 以用户为中心 First Paint 首次绘制(FP)这个指标用于记录页面第一次绘制像素的时间,如显示页面背景色。First contentful paint 首次内容绘制 (FCP)LCP是指页面开始加载到最大文本块内容或图片显示在页面中的时间。如果 FP 及 FCP 两指标在 2 秒内完成的话我们的页面就算体验优秀。Largest contentful paint 最大内容绘制 (LCP)用于记录视窗内最大的元素绘制的时间,该时间会随着页面渲染变化而变化,因为页面中的最大元素在渲染过程中可能会发生改变,…

纵横小说的上云之路

纵横小说业务从传统IDC迁移到云上的过程,历经数月,我们技术中心也是经历了一场全面的业务优化和改变的过程。整个上云的过程是复杂且繁琐的,是在所有运维、后端、测试、产品等同学的一点点一轮轮的调研、讨论、测试中一步步完成的,其中的细枝末节都要经过数次的沟通测试,最终才成功完成上云的迁移。…

七猫utools插件分享

七猫utools插件这个工具其实已经在测试团队内部使用了很长一段时间了,在很多体验过同学的自来水推广下,很多业务组的开发同事也开始使用这个工具。可以说是很实用也广受好评的一个测试工具箱。…

七猫日志接收系统之客户端埋点 SDK

七猫日志接收系统系列文章将会向大家介绍七猫日志接收系统及相关的埋点 SDK,总共分为四篇, 本文为系列的第三篇,将介绍客户端埋点 SDK 的实现,主要涵盖了埋点日志的采集、存储、上传等一系列流程。…

纵横Android阅读器-绘制优化

随着纵横小说app各模块的迭代升级,阅读器所承载的功能也日益复杂。由于诸多历史遗留问题,阅读器内控件的绘制和点击实现方式变得相当繁琐,导致即便是对阅读器的微小调整,也需要耗费较长的开发周期,尤其是在当前一周一版的发布节奏下。因此,阅读器的需求变得难以快速响应,很难实现每周小步迭代。在本文中,将探讨纵横小说阅读器中可交互控件在简化现有实现方式上所做的一些尝试。…

七猫研发中心参加 Gopher China 2023 大会上海站回顾

2023 年 11 月 19 日,时隔三年 Gopher China 大会终于回归上海(Gopher China 2023 - 上海站)。Gopher China 大会是为广大的 Go 语言开发者以及大规模应用 Go 的示范企业精心准备的一场技术盛宴。自 2015 年由 Go 中国社区发起的第一届 Gopher China 大会在上海成功举办以来,历时 8 年它已经成为了国内最权威和最干货的 Go 大会。…

七猫日志接收系统之架构设计(下)

七猫日志接收系统系列文章将会向大家介绍七猫日志接收系统及相关的埋点 SDK,总共分为四篇。本文为系列的第二篇,我们将基于当前的 v4 版本详细介绍七猫日志接收系统架构,并从日志处理效率、系统的高可用以及成本控制等方面进行架构设计分析。同时随着七猫的继续壮大,日志接收系统必将迎来越来越多的挑战,我们也会对后续的迭代版本进行规划与展望。…