前言
随着新年的临近,我们备受期待的货拉拉年度技术年货如约而至~
时光如煮雨般悠悠流淌,岁月在我们生命的画卷上缝制出浓浓的记忆。2023年,我们一起经历了无数的喜怒哀乐,汇聚成一幕幕深刻的记忆。
在2024新年来临之际,我们精心挑选了44篇的技术文章和若干视频,作为新年礼物送给大家!
年度文章
最受欢迎前端文章
《 货拉拉移动端Abort异常监控实践 》阅读量 13,025
移动端稳定性监控一直是货拉拉移动端的重点工作之一,而游离在Hades平台(内部自研移动端监控平台)之外的Crash事件仍然是一片未知空白,比如jetsam、watchdog机制引起的异常。这些异常会导致应用闪退,会给用户带来很大的体验伤害。从XNU源码可以看到Jetsam机制是通过发送SIGKILL异常信号的方式来终止进程,而SIGKILL无法在当前进程被忽略或者被捕获。换句话说,我们之前监听异常信号的常规 Crash 捕获方案也就不适用了,那么就会形成一片监控盲区。货拉拉移动架构团队决定自研对Abort异常的监控,以消除这片监控盲区。
最受欢迎后端文章
《 货拉拉云台系统架构设计 》阅读量 4,756
货拉拉云台是货拉拉内部自研BI(Business Intelligence(商业智能),简称:BI)可视化平台。
截至2022年12月,货拉拉业务范围已覆盖352座中国内地城市,月活司机达66万,月活用户达950万,随着公司业务不断扩张,对数据分析和数据价值转化的需求愈加明显,原先提供的数据分析平台在一定程度上已经无法满足业务的多样化需求,且无法直接与公司现有的权限管理系统、业务应用系统打通,更存在一定的数据权限管控和数据泄露风险,此时打造自研BI平台的迫切性越来越强,货拉拉云台便应运而生。
最受欢迎测试文章
《 货拉拉云真机平台的演进与实践 》 阅读量 10,461
随着货拉拉在同城、跨城、企业、搬家、零担等业务以及全球化的高速发展,移动端测试团队在质量保障体系建设上也日趋完善,我们在功能、性能、兼容、稳定、埋点、安全等测试方向上都有了更深入的探索与实践。因此,为了更好的支撑公司移动端的质量建设,移动云真机平台应运而生,不仅更好的支持移动端自动化测试,同时也满足了各地手机资源的共享需求。本文主要介绍我们在云真机平台的建设过程中能力建设与落地实践上的一些经验。
最受欢迎数据文章
《 「数仓建设篇」从0到1搭建无忧搬家数仓 》阅读量 7,204
无忧搬家数据以前很多都是数仓同学从业务库负责接入数据至ods层,然后就由各个下游分析师取ods贴源层数据然后进行取数计算分析,数仓这边缺乏沉淀公共层数据,从而带来了一系列问题。
基于以上的背景,为提高数据的易用性和复用性、减少数据冗余、提高数据产出效率,数仓开发这边协同调研并结合下游BI需求,搭建无忧搬家主题域公共层数仓模型。
最受欢迎算法文章
《 货拉拉使用大模型提升营销效率的实践 》阅读量 3,581
根据麦肯锡2023的最新报告,生成式AI在经济价值中的75%主要集中在四个领域:客户运营、营销和销售、软件工程和产品研发。营销领域是AIGC的重要使用场景。
目前,许多国内外公司已经开始在营销领域布局或应用大模型,以提升营销效率。
在货拉拉我们也积极推进大模型的建设,进行企业内部业务应用赋能,将其应用到营销场景中(包括外呼、邀约、补贴、触达、广告、抽奖、积分等)。通过这种方式,不仅提高了运营效率,也为用户提供了更好的体验。
抢鲜签约作者文章
耗电问题可能在市面上并不多见,因为大部分APP的使用时间是非常短暂的,即使有着强耗电行为,也不容易被用户感知,同时对于用户来说,耗电问题最直观的就是单位时间手机掉电快,也有可能伴随着较高的设备温度,但是大部分硬件层都有控制,比如高通芯片会在CPU高温的情况下,会暂缓超大核的调度。然而不同硬件厂商调度策略不同,Android系统也存在碎片化严重现象,同样的CPU不同的厂商也有不一样的调度策略,因此耗电问题比较难以排查,而且线下复现非常困难。
货拉拉司机端运行时间非常长,而且司机都在外活动,任何高耗电行为都容易引起客诉,因此我们将进一步探索,如何做到耗电监控,以及如何通过监控发现可以优化的点。
年度优秀开源项目
PageSpy Star 2700+
PageSpy是一款用来调试远程 Web 项目的工具。基于对原生 API 的封装,它将调用原生方法时的参数进行过滤、转化,整理成格式规范的消息供调试端消费;调试端收到消息数据,提供类控制台可交互式的功能界面将数据呈现出来。
TheRouter Star 1000+
一款同时支持 Android、iOS 用于模块化开发的动态路由框架。 TheRouter 具有高双端一致性,不仅能对常规的模块依赖解耦、页面跳转,同时提供了高度动态性、远端下发与执行、以及模块化过程中常见问题的解决办法。
年度技术开放日
7月29日,由货拉拉大移动团队发起的 "货拉拉第二届技术开放日" 直播活动成功在线上举办,吸引了超过5536人次的参与。本次活动邀请了米可世界Android组负责人张德艺,以及货拉拉移动团队六位研发:海亮(GDE)、嘉椿(资深测试工程师)、张涛(客户端架构师)、恺靖(资深iOS)、雁彬(拉拉AI实验室负责人)、景浪(客户端架构师)和大家进行分享交流,为大家带来了不同视角下移动端丰富的实践经验。
录屏:
PPT:
年度WWDC之夜
一年一度的苹果全球开发者大会(WWDC)在北京时间2023年6月6日凌晨拉开了帷幕,货拉拉联合国内技术社区组织"T沙龙"共同举办了WWDC.Playground 特别系列活动------"WWDC之夜",本次活动旨在聚集行业内的开发者、极客、爱好者等,一同在线下观看今年WWDC的首场特别活动的直播。与会者除了可以一起欣赏这次重要活动的直播以外,还能交流并分享有关新技术、产品和工具的想法和见解,提高开发水平,还可以结交志同道合的同行,促进行业发展。协助本次线下活动的还有:SwiftGG、XR基地、少数派、泊学。
"WWDC之夜"活动当晚共有70多位与会者参与,全场座无虚席!
录屏:
文章:
《未来已来?货拉拉 x WWDC 一同见证空间计算时代开启》
全部合集
前端
博客
一键将 Word 文档转成 Vue 组件:谈谈 mammoth 的应用
React 组件性能优化:如何避免不必要的 re-render
三年磨一剑,货拉拉iOS用户端10万分位Crash率攻坚之战
开源
TheRouter | 一款支持 Android 用于模块化开发的动态路由框架
TheRouter-iOS | 一款支持 iOS 用于模块化开发的动态路由框架
DynamicResourcePlugin | 一款实现资源动态加载的框架
HLLPopupsManager | 一个通用的弹窗调度管理组件
BatteryFinder | 一款基于android平台的耗电检测工具
react-pull-to-refreshify | 一个简易的、无任何依赖的pull-to-refresh react组件
i-devices | 一款通过纯 CSS 代码实现手机、电脑等各类设备样式效果的工具
Nad | Nad is a solution that bridges language boundaries
ReactJsonView | 一个用于展示可序列化数据的 React 组件
request | a request library to support browsers and MiniProgram platforms
CustomError | Used to fix the odd behaviors of native Error object inheritance code compiled to ES5
后端
数据
测试
算法
往期回顾
感谢
2022年1月19日,货拉拉技术团队博客诞生,并发表了第一篇技术文章。至今我们一共发布了87 篇文章,文章阅读数累计42.06万次。
再次感谢大家多年来给予货拉拉技术团队的支持和厚爱,我们也会不断努力,为大家提供更多优质的技术内容。祝大家在新的一年里,奋楫笃行,再攀高峰。
阅读更多技术内容请多多关注官方账号
本文系货拉拉技术团队出品,著作权归属货拉拉。欢迎出于分享和交流等非商业目的转载或使用本文内容,敬请注明"内容转载自货拉拉技术团队"。本文未经许可,不得进行商业性转载或者使用。