草庐IT

开源 | 携程 Redis On Rocks 实践,节省 2/3 Redis成本

作者简介patpatbear,携程软件技术专家,负责携程缓存内核的维护,热爱开源,专注于高性能、分布式NoSQL系统的建设和应用。一、背景redis使用内存作为存储介质,具有良好的性能和低延迟,但其内存容量通常成为瓶颈,且内存价格较高,导致redis使用成本较高。随着SSD磁盘性能的不断提高,NVMeSSD的随机读写延迟也仅有几十微秒,与redis的固有延迟(100~200us)相当,用SSD作为存储介质也可以达到较低的延迟,同时节省成本。因此我们研发了ROR(Redis-On-Rocks)产品,通过对redis内核增强以支持数据冷热交换,使用磁盘扩展缓存容量,可节省约2/3成本,而性能也能满

高效联动,携程机票IVR可视化的探索和实践

作者简介Michael,携程全栈开发专家,追求以技术手段解决业务上的共性问题,构建灵活可配置且可视化的系统,提高生产力,降低沟通成本。CunShun,携程后端开发工程师,专注系统架构、稳定性、低代码等领域。一、引言IVR(交互式语音应答,InteractiveVoiceResponse)系统,是指用户通过拨打指定号码后可以根据语音提示,收听和点送所需语音信息,并且协助完成自助服务。通过不断完善IVR交互逻辑,可以实现客户来电自助操作,减轻客服座席压力,使之仅处理确实需要人工处理的呼叫。本文将主要分享携程机票IVR可视化系统的探索与实践。二、携程机票IVR系统的演进过程携程呼叫中心系统结构如下图

携程后台低代码平台的探究与实践

作者简介ck,携程后端开发专家,关注技术架构、高并发、性能调优等领域;Geralt,携程前端开发专家,关注前端框架及性能优化;Kaoru,携程资深前端开发工程师,关注前端性能及开发工具;概述PGClowcode平台是携程市场内容PGC团队搭建的主要用于后台页面开发的低代码平台,第一版于23年3月上线,截至10月平台已经拥有100+用户,在平台上开发了130+个应用和180+个页面。本文将主要介绍团队采用低代码平台的背景、方案调研、落地过程中遇到的问题以及解决方案,同时也大致介绍了该低代码平台提供的能力。一、研究背景1.1 为什么需要低代码平台软件产品通常由客户端(App、小程序、网页)和运营后

深度多元时序模型在携程关键指标预测场景下的探索应用

作者简介doublering,携程高级算法工程师,关注自然语言处理、LLMs、时序预测等领域。一、背景互联网行业中,有许多关键指标直接影响公司未来的规划与决策,比如流量、订单量、销售额等。有效地预测这些关键指标能够辅助公司提前做出相应的预算、规划、决策,实现收益的最大化。预测关键指标实际上是个典型的时间序列预测问题,即基于指标的历史真实数据来预测未来一段时间的值。在携程也有一些相关的业务场景,本文将以预测流量、订单量、GMV为例,介绍我们在时间序列预测方面使用的一些方法与思考。二、问题定义与难点2.1口径定义预测目标值:流量、订单量和GMV等关键指标。预测时长:未来30天。重点关注节假日期间的

携程火车票异常检测和根因定位实践

作者简介龙川泾渭,携程算法工程师,专注异常检测、根因分析、时间序列预测等领域。携程火车票包含1000+的业务指标,人工监测指标的异常情况耗时费力,而由于业务差异,基于规则和简单统计学的检测方案只能覆盖到单个指标或者单类指标,并且不能随着新业务上线或者功能变动灵活动态的调整相应的规则,并不适用于大量不同业务线的指标。我们希望使用AI算法来代替人工,对指标进行全自动的监控,旨在发现指标的异常和导致异常的潜在原因。具体来说,对于异常检测,使用六种无监督检测算法计算异常得分,根据时间序列特性和指标的业务特点计算异常阈值,集成多种算法的异常结果进行硬投票,得到异常结果。对于根因定位,集成了Adtribu

干货 | 瘦身50%-70%,携程 Taro 小程序样式 Size 缩减方案

作者简介Can,携程前端开发,目前从事小程序开发工作,对编译打包技术、小程序跨平台解决方案有浓厚兴趣。一、概述目前我们团队小程序是使用Taro跨端方案React框架进行开发,基于现有样式方案,在编译打包后会产生大量的样式代码冗余,在项目编译后的产物中占有较大比例。分析了编译后的样式代码后,我们发现冗余代码主要体现在两个方面:项目样式文件中大量使用了父子选择器作为作用域进行样式隔离,编译后出现类名大量重复冗余。如以下SCSS文件样式代码中,编译后.box.item重复冗余了三次。//编译前代码.box{.item{.item1{}.item2{}.item3{}.item4{}}}//编译后代码

【2023-03-07】携程春招笔试四道编程题

恭喜发现宝藏!搜索公众号【TechGuide】回复公司名,解锁更多新鲜好文和互联网大厂的笔经面经,目前已更新至华为、字节…作者@TechGuide【全网同名】2023大厂真题解析请移步我的专栏【进阶版】2023最新大厂笔试真题&题解第一题:稳定数组题目描述游游定义一个数组为"稳定的”,当且仅当数组相邻的两个元素之差的绝对值不超过1。例如[2,3,2,2,1]是稳定的,而[1,3,2]则不是稳定的。游游拿到了一个数组,她想求出该数组的最长的"稳定的"连续子数组的长度,你能帮帮她吗?输入描述第一行输入一个正整数n,代表数组的大小。第二行输入n个正整数ai,代表数组的元素。1≤n≤1000001≤a

携程火车票出海架构演进之路

作者简介py.an,携程后端研发经理,关注性能优化、技术架构等领域venson,携程后端高级研发经理,关注性能优化、技术架构等领域一、引言在全球化战略的背景下,Trip.com作为一个面向国际市场的全球OTA平台,正努力推进国际化战略部署。Trip.com火车票正在积极投入资源和技术力量来拓展海外业务,通过将应用、数据部署新加坡、法兰克福等中心,从而给全球用户带来更好的购票体验和减少数据合规带来的风险。二、业务背景目前Trip.com火车票全球铁路业务主要集中在英国、亚洲和欧洲各国,其中欧洲作为世界上经济、交通非常发达的大洲,也成为更加关注的一站,未来还有更多更大的舞台。随着全球疫情危机消退,

【2023,学点儿新Java-14】携程面试题:如何看待Java是一门半编译半解释型的语言?| 咨询互联网行业 资深前辈的一些问题 | 附:为什么说ChatGPT的核心算法是...?| GPT-3.5

前情回顾:【2023,学点儿新Java-13】阶段练习之Java面试企业真题(阿里巴巴&拼多多等)|常用的Java命令行操作都有哪些|如何解决Java的内存泄漏和内存溢出问题?【2023,学点儿新Java-12】小结:阶段性复习|Java学习书籍推荐(小白该读哪类Java书籍?有一定基础后,再去读哪类书籍?)【2023,学点儿新Java-11】基础案例练习:输出个人基础信息、输出心形|Java中制表符\t和换行符\n的简单练习…更多Java系列文章,可参阅博主主页哦! 其实我们都应该多去尝试着做自己喜欢的事情,有些事可能在特定的时空下只有那一次机会,错过了就是永远,没有人“应该”活成什么样子。

干货 | 携程国际机票架构重构实践

作者简介Mega,携程国际机票工程师,关注Java、devops领域。一、前言大多数的技术研发都对重构有所了解,而每个研发又都有自己的理解。从代码重构到架构重构,我参与了携程大型全链路重构项目,积累了一点经验心得,在此抛砖引玉和大家分享。二、重构的定义重构是指在不改变外部行为的情况下,改进其内部结构的软件系统更改过程。三、重构的原因3.1组织架构调整目前携程大部分业务场景都使用了微服务架构,要求服务应该封装单一的责任或单一的能力,以形成松散耦合的服务架构。根据著名的康威定律,保证一个团队可以独立工作、快速交付变更、尽可能消除团队之间协作和协调的费力度。所以当组织架构因为业务发展需要做相应调整时