React的Fiber架构原理

4 月 23 日
阅读 9 分钟
20
先看两个例子,例子除了React版本外没有不同,列表有5000个元素,元素中的文字会随着用户进行输入的内容而改变,执行相同操作,也就是输入从1到9变为'123456789',可以看到上下两张图,展示上会有不同的效果,其中上图为React15.7版本的例子,下图为React16.8版本的例子,可以看出React16.8的例子比React15.7的例子流畅。

前端H5与客户端Native交互原理 - JSBridge

4 月 16 日
阅读 7 分钟
28
在混合应用开发中,一种常见且成熟的技术方案是将原生应用与 WebView 结合,使得复杂的业务逻辑可以通过网页技术实现。实现这种类型的混合应用时,就需要解决H5与Native之间的双向通信。JSBridge 是一种在混合应用中实现 Web 和原生代码之间通信的重要机制。

LangChain 工程架构解析

4 月 9 日
阅读 13 分钟
92
LangChain 是一个基于开源大语言模型的 AI 工程开发框架,旨在使研究人员和开发人员能够更轻松地构建、实验和部署以自然语言处理(NLP)为中心的应用程序。它提供了多种组件和工具,可帮助用户利用最近的语言模型进展,如大型 Transformer 模型等,并且可以与 Hugging Face 等平台集成。LangChain 的核心理念是将语言模...

Node.js版本管理工具

3 月 25 日
阅读 5 分钟
112
Node.js是一个开源的、跨平台的、用于服务端和网络应用的运行平台。它基于Google's V8引擎,并使用事件驱动、非阻塞I/O模型,使得其轻量且高效。Node.js的目标是使得JavaScript的开发范围扩展到Web开发之外,使开发者可以使用JavaScript为系统编写服务器端的软件,并轻松地构建高性能、实时的Web应用。Node.js包含了一系...

哈啰算法实时化2.0建设实践

3 月 19 日
阅读 3 分钟
92
其中一个主要原因是新的决策调用场景的接入,原有的决策调用场景主要是通过RPC接口调用触发的,而流式预测承接的场景主要由kafka等消息中间件来调用,这些场景都存在调用量大的特点,单个场景有上千、万QPS调用。流式预测也存在一些定时触发调用的场景,如供需预测场景,波峰波谷明显。流式预测可以将峰值QPS打平,保证...

探索特征衍生:提高建模效果的秘诀

3 月 12 日
阅读 7 分钟
152
特征衍生主要指的是通过既有数据进行新特征的创建。总体来说,特征衍生有两类方法,其一是通过深入的数据背景和业务背景分析,进行人工字段合成,这种方法创建的字段往往具有较强的业务背景与可解释性,同时也会更加精准、有效的提升模型效果,但缺点是效率较慢,需要人工进行分析和筛选,称为手工特征衍生。其二则是抛...

WebRTC拍摄在车主认证中的实现

3 月 4 日
阅读 6 分钟
108
车主认证主体是以H5形式存在的,目前投放在多端,包括:哈啰App、车主App、货运车主App、支付宝小程序、微信小程序、H5外投页面,存在多端场景调用拍摄能力的需求。

Service Worker:离线应用与后台同步的解决方案

2 月 27 日
阅读 11 分钟
385
HTTP1.1引入了Cathe-Control,它使用max-age指定资源被缓存多久,主要是解决了Expires一个重大的缺陷,就是它设置的是一个固定的时间点,客户端时间和服务端时间可能有误差;

智能判责在哈啰顺风车的应用

2 月 21 日
阅读 4 分钟
264
在普惠顺风车订单系统中,一旦司机和乘客建立订单关系后,若其中任何一方发起取消订单的请求,将触发判责算法,该算法将输出确定订单取消责任的一方。

多场景静态化编译在两轮SAAS用车实践

1 月 29 日
阅读 6 分钟
247
在用车saas化推广兼容小品牌用车的过程中,由于用户交互、接口数据、业务流程在主品牌与小品牌之间存在差异性,导致代码分叉过多,影响可读性与可编辑性;两侧用车能力存在部分混入,造成运行时代码过大;单一场景迭代容易干扰其他端侧用车能力;后续还会拓展到端外用车,上述问题会继续放大。

街猫自研多媒体能力介绍

1 月 25 日
阅读 26 分钟
310
音视频流合成、滤镜 - 需要能够灵活的支持用户去触发对猫屋直播流的截取、合成、添加滤镜等,使用系统多媒体Api,在可扩展性,流处理效率,兼容性,以及滤镜的支持上,都存在问题

年度重磅|2023哈啰技术精选电子书下载

1 月 19 日
阅读 1 分钟
170
年轮依旧,时光匆匆,2024 甲辰龙年正悄然向我们走来。在新春到来之际,我们为大家盘点过去一年的精选文章,整理制作成一本近 300 页,6 万字的电子书。电子书的内容覆盖后端、前端、算法、运维、质量等不同领域,每一篇都干货满满,希望对各位同学拓展技术思路有所帮助。感谢各位同学一直以来的支持,也欢迎大家将「哈...

React hooks原理浅谈

1 月 8 日
阅读 4 分钟
620
fiber是react的基本工作单元,所有的操作都要基于它实现。其实fiber就类似一个个element元素,react的工作流程其实就是遍历fiber tree。

前端单元测试入门实践

1 月 3 日
阅读 9 分钟
273
简介前端单元测试是指对前端代码中的最小可测试单元进行测试的过程。这些最小单元可以是函数、组件或模块等。通过编写针对这些单元的测试用例,我们可以验证它们在各种情况下的行为是否符合预期。

Taro编译mini-runner包的作用

2023-12-26
阅读 10 分钟
207
Taro 是一套遵循多端开发的解决方案。只需要一套代码,就可以编译转换成 RN、H5、小程序、快应用多端的运行代码,其运转流程主要分为编译时,运行时两个阶段。

两轮车载图像感知与端侧视觉

2023-12-06
阅读 4 分钟
189
AI领域是端侧视觉落地产品和方向非常多的领域,如手机端、手表、智能监控设备、平板电脑。目前的几个风口方向,如特斯拉FSD自动驾驶,也采用了纯视觉的端侧解决方案。VR和AR等视觉领域、机器人领域也采用了端侧视觉相关的技术。

哈啰一站式业产研协同平台的建设与实践

2023-11-13
阅读 4 分钟
156
10 月 26 日,思码逸 DevData Talks 邀请到了哈啰出行研发效能团队负责人高明国。他多年来负责公司业产研协同平台建设、效能度量工具体系建设、测试效能工具建设、稳定性工具建设、质量流程规范管理等。他这次为我们带来的主题是《哈啰一站式业产研协同平台建设与实践》,分享如何通过一系列效能方案与最佳实践后,帮助...

apollo线上问题的分析

2023-11-06
阅读 8 分钟
239
最近发生了一个apollo带宽被打满的问题,因此看了一下apollo的部分设计和源码,本文针对发生的apollo带宽问题,聊聊apollo部分设计的理解。

Flink消费kafka数据同步问题排查

2023-10-30
阅读 4 分钟
281
我们有一个flink任务,消费的kafka的数据,写入到es,非常简单的逻辑,但是出现了数据丢失的情况,之前没遇到过,初步猜想是转换逻辑或脏数据的影响,排查了一圈,未发现Exception等相关信息。猜想是写入频率太快,es写入的时候,出现了version conflict,也没找到相关证据。

React 代码如何跑在小程序上?

2023-10-17
阅读 18 分钟
564
把 react 代码编译成小程序代码,这样我们可以开发用 react,然后跑起来还是小程序原生代码,结果很完美,但是把 react 代码编译成各个端的小程序代码是一个力气活,而且如果想用 vue 来开发的话,那么还需要做一遍 vue 代码的编译,这是 taro 1/2 的思路。

Vue 不定高展开动效及其原理

2023-10-08
阅读 6 分钟
230
对于一般的展开、隐藏特效,只需要在对应元素的 height 上面增加过渡效果即可。但问题是:不知道对应的 div 的高度,其高度是内部的元素自动撑开的,此时直接在 height 属性上面添加过渡效果会失效(后面会说明原因)。

一文带你了解 Web Worker - 前端的“多线程”

2023-09-25
阅读 10 分钟
760
众所周知,JavaScript 采用的是单线程模型,即所有任务都在一个线程上完成,一次只能做一件事情。但单线程意味着所有的任务都需要排队,前一个任务结束了,才会执行后一个任务。如果一个任务耗费了太长的时间,后一个任务就一直无法执行。体现在浏览器里就是浏览器卡住了,无法操作。

ElasticSearch节点嗅探机制实践

2023-09-19
阅读 8 分钟
691
我们小组主要负责四轮场景下的司乘匹配工作,基于开源分布式搜索引擎ElasticSearch实现订单的召回。同时我们使用Flink实时消费kafka消息,将订单数据写入到对应的ES索引中。

AI平台如何赋能后端研发

2023-09-11
阅读 5 分钟
500
随着人工智能的发展和技术进步,越来越多的企业开始使用人工智能技术做效率的提升和业务效果的提升,降低企业成本,增强企业竞争力。本文将基于哈啰AI平台的能力,以接入普惠工单系统自动转派为例,讲述如何通过算法能力赋能后端研发提效。

JIT逆优化导致ES集群CPU异常的问题分析

2023-09-05
阅读 3 分钟
781
在一次全链路压测过程中,顺风车匹配ES集群出现了个别节点CPU几乎被打满的情况。第二轮压测,我们关闭了最近上线的H3召回匹配升级AB实验,在同样压力下集群cpu运行平稳,保持在35%左右,开启AB实验后之前异常节点cpu又急速增加,初步定位到节点异常应该和H3召回升级实验相关。

AI平台AutoML在哈啰的探索与实践

2023-08-18
阅读 3 分钟
674
算法模型的研发具有很强的范式,首先是特征数据加工,选取一些数据作为特征。拿到特征之后,选择一个模型并进行相关的训练。第三步是把训练好的模型部署到模型平台上面。最后,决策平台会做业务流程的编排。

端智能在哈啰的落地实践

2023-08-07
阅读 3 分钟
848
端智能和边缘智能是比较类似的概念,而边缘智能会依赖另一个更广泛的技术,即边缘计算。边缘计算指的是在网络边缘结点来处理、分析数据。边缘结点指的就是在数据产生源头和云中心之间任一具有计算资源和网络资源的结点。比如手机就可以是人与云中心之间的边缘节点,网关是智能家居和云中心之间的边缘结点。边缘计算把更...

哈啰开源Dora:深度解析Taro多业务线小程序协作构建工具与前端协作流

2023-08-03
阅读 5 分钟
305
dora是一个哈啰的开源的taro小程序微前端集成框架,具有把多页业务拆分并集成编译与通讯的能力,解耦了业务与业务,降低了总体的复杂度与多业务线合作难度,有轻量化扩展性强等特点。

哈啰云原生架构落地实践

2023-07-31
阅读 5 分钟
361
当时第一时间考虑用原生HPA组件,但在实际调研和小规模使用的时候发现了很多问题。一方面是内置的问题,如原生不支持自定义指标和定时扩缩容,使用率计算基于resources.requests,使用单个Goroutine执行。更大的痛点在业务场景上,微服务在线实例拉出状态,特殊业务Job任务实例不能中断,要考虑下游DB层可用性。

Java的AQS源码浅析

2023-07-28
阅读 10 分钟
243
最近面试问过很多候选人Java锁有关的知识,可以感受到的是,大家的理解基本都停留在“八股文”的阶段,实质上对Java的锁以及多线程的同步机制这种底层原理,理解的不是很好。网上这类文章已经很多了,但是看了下有好多文章是过时的,典型的例如AQS里的addWaiter方法在JDK16里就没见到,或许代码进行了重构了。