Jira实践案例分享:小米集团如何通过API请求优化、数据治理与AI智能客服等,实现Jira系统的高效运维

日前,Atlassian中国合作伙伴企业日活动在上海成功举办。活动以“AI协同 创未来——如何利用人工智能提升团队协作,加速产品交付”为主题,深入探讨了AI技术在团队协作与产品交付中的创新应用与实践,吸引了众多业内专家、企业客户及技术开发者的积极参与。

活动现场,小米集团高级SRE孟凡胤带来《Jira常见问题处理及如何利用AI智能客服提升效率》的精彩演讲。演讲从小米Jira系统的使用现状出发,探讨分享了API请求及数据治理、项目管理中的个性化设置等运维过程中的挑战与突破,以及如何利用AI工具,深化AI智能客服应用,提高运营效率。

以下为演讲回顾(内容有精简优化):

大家好,作为Jira的使用方,今天我们主要从运维和运营两个层面来介绍小米是如何使用Jira系统的。

小米Jira系统的使用现状

首先,一起来了解下小米Jira系统的使用现状。

Jira系统承担了我们集团的手机、汽车、电视、笔记本和生态链各个产品的bug缺陷管理,以及米粉问题反馈的官方渠道,作为与米粉沟通的桥梁,它在小米内部扮演着至关重要的角色。

当前,我们系统的Issue数量已达到千万级别,数据量处于业界顶端,同时项目数量也达到了1000+,项目配置复杂,个性化需求也非常多,这些都对我们的运营团队提出了专业且严格的要求。

随着业务的不断增长和复杂性的提高,我们的系统体量已经远超官方标准产品所建议的体量,这也导致了一系列无法预知的问题。作为技术出身的系统SRE,我们致力于保证系统的SLA,确保系统的可用性,提升用户体验和员工的工作效率。

在龙智的协助下,我们去年花了一年时间,收集了影响系统的三十多个问题,并提出了解决方案。目前,这些方案已经落地并产生了显著效果。

API请求及数据治理

我们遇到的第一个问题是API请求和数据治理。

随着数据量和用户开发请求的持续增长,我们的Search接口受到大量不规范的分析请求冲击。这些请求中的JQL非常不规范,加上Labels数量达到了千万级别,直接在引擎中搜索的话,很可能导致系统崩溃或严重的OOM问题。

▍ 应对措施1:代理层API限流

对于这一问题,我们首先想让它有节制,不让它恶意请求。我们在nginx上使用lua脚本语言对请求的QPS和IP两种维度按照时间进行封禁。QPS达到50做一次封禁,右边是按IP封禁,一秒请求5次,我们会封禁60秒。这样,我们成功拦截了30%的不规范请求,缓解了部分API带来的系统压力。

▍ 应对措施2:API与web服务剥离

然而,即便进行了限流,大数据量的请求仍可能导致集群中的某个节点OOM,影响用户访问。那么假想一下,有没有可能在集群当中将API和Web两个服务分开?

在龙智的专业指导下,我们在7层代理上成功剥离了API和Web服务,确保API请求导致的系统夯住及oom不再影响到前端用户的访问和使用。

此外,我们还在集群上增加了状态监控,如遇到cluster_rmi_connect_fail等异常,会触发告警,使我们能够实时掌握集群的状态。

▍ 应对措施3:大数据治理

尽管采取了上述措施,我们仍未能完全解决API请求给系统带来的压力,那么就在根源上找,大家最终的诉求就是想要获取数据,那是否可以直接给用户提供数据呢?

大家都知道,现在是大数据时代,依托集团的数据工场,我们可以绑定mysql数据源,使用Flink SQL实时开发作业,根据不同的需求给大家提供实时数据,这样,用户无需再通过Search接口请求数据,极大地减轻了系统压力。

这时候有人会问,数据推送后,我们怎样在大数据平台做权限管控?

对此,我们设立了专业的团队和权限审核平台,按照project维度开放权限。这确实需要人工操作,包括创建权限表、与需求方对接等,以确保数据的安全。虽然初期工作量较大,但随着对工作流程的熟悉和标准化,我们已能复制和重用部分工作,从而显著减轻后期的工作量。

▍ 应对措施4:统一webhook推送

在数据治理过程中,我们还注意到一个问题:当issue被更新或创建时,webhook会推送过多不规范的消息。为解决这一问题,我们统一了webhook的推送,将其统一到RocketMQ上,用户可以直接在RocketMQ上进行消费。这一举措不仅规范了消息推送,还允许用户基于这些数据进行二次开发,如消息推送、看板展示和实时数据分析等。

这项工作还在持续实施当中,目前,我们已对接了大约三四十个需求,所有数据均通过统一的出口进行传输,同时减少了API请求,大大提高了系统的稳定性。这正是我们在运维层面所追求的:确保系统在一个更加规范、健康的环境中稳定运行。

项目管理中个性化设置

在系统运维方面,我们取得了很大的突破。其实Jira最核心的工作还是在系统配置上,Jira系统运营的工作非常的繁琐且复杂。接下来,我将介绍一下我们如何对Jira运营的工作做精细化及规范化管理。

▍ 统一项目配置,一键创建项目

在Jira的运营方面,运营团队大部分都是在配置项目个性化需求,创建项目,导入权限,导入模版等相关工作,同产品的project需求也不统一,这些重复性工作占用了运营团队大量的时间。

面对这一情况,我们拉通了各个项目负责人,把同产品(例如手机,笔记本,电视等产品)SPM的需求责任到一位同学身上,把项目的配置对齐,进行统一规划。每个产品对应了一个项目模版,由负责人在辅助系统平台长实现一键创建项目、模版自动导入、权限自动导入。最终实现了统一需求、统一项目模版、统一权限,大大减少了运营工作量,提高了工作效率。

▍ 跨服务器Clone插件

集团中有多套Jira系统,但是系统之间的数据无法做到互通。为此,龙智为小米定制了跨服务器Clone插件。该插件通过混合使用Jira的JavaAPI、标准RestAPI和自定义RestAPI,实现了多个Jira服务器之间的Issue克隆及信息同步。

其主要功能有:

  • 灵活的配置模式:支持多个Jira服务器之间的连接配置
  • 支持统一认证:支持多个Jira服务器之间的SSO认证,保障各服务器之间的数据交互安全
  • 全方位的业务映射:支持项目、问题类型、字段及字段默认值等多个维度的映射,保证不同部门之间的无缝协作
  • 克隆信息展示:在Issue界面中展示对端服务器的克隆Issue信息,支持一键免登录跳转至对端服务器对应Issue界面,极大提升了工作效率
  • 实时数据同步:克隆Issue有任何一方信息发生变更都会实时同步至对方,保证数据同步的时效性

AI智能客服提高运营效率

最后,为大家介绍一下我们的AI智能客服。

在日常的Jira运营中,我们面临着大量高重复性的用户咨询问题,Jira运营的同学逐一回答是需要付出很多的时间成本。小米一直非常重视知识库的建设,截至目前,我们的运营相关文档已达百余篇。

那么,如何将这这么多的文章快速、准确地传递给用户?这是一个难题。传统的机器人客服虽然可以推送相关知识,但往往无法提供精确、满意的回答,导致用户仍然需要花时间去筛选和寻找答案。

我们做的是让机器人代替运营人员回答用户的问题。

我们的AI客服解决方案利用大模型技术,将知识库和用户问题转化为语义向量,通过向量匹配快速给出准确回答,实现智能客服功能。

现在,我们用户问题回答的准确率高达80%,大大释放了运营的工作量,并且我们还在不断收集用户反馈,优化和更新我们的知识库。

最后,我想说的是,Jira是一个非常有意思的产品,值得我们去深入挖掘。Jira也是一项需要长期维护的工程,依靠个人的力量是远远不够的,我们也需要与更专业、更精细、更系统的团队共同进步。也非常感谢龙智提供这次分享的机会,期待未来我们能够有更紧密、更专注的合作。


获取Jira产品详情或更多实践案例,欢迎咨询Atlassian全球白金合作伙伴——龙智:

官网:http://www.shdsd.com

电话:400-666-7732

邮箱:marketing@shdsd.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/361744.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文心智能体平台介绍和应用:制作你的智能体(运维小帮手)

这是我自己制作的智能体 大家可以了解一下! 运维小帮手!https://mbd.baidu.com/ma/s/tE19dqvr 文心智能体平台官网首页 点击跳转!https://agents.baidu.com/ 什么是智能体平台? 文心智能体平台(Wenxin Intelligen…

关于Vite+Vue+Ts WebStorm路径别名的问题

一、准备一个项目 二、在 vite.config.js 中添加 resolve: {alias: {: /src}} 三、tsconfig.app.json中添加代码 //添加代码"baseUrl": ".","paths": {"/*": ["src/*"]}把src的一个文件修改路径为开头 四、安装插件 npm i …

第 11 课:组件介绍与自定义开发

本讲主要介绍了隐语的组件标准、已有的组件能力以及进一步的自定义开发流程。经过本讲的学习,可以为将隐语集成到任意调度系统,基于Kusica/SecretPad进行二次开发,以及参与隐语开放标准共建建立基础。 一、隐语开放标准 隐语提出的适用于隐私…

仓库管理系统

摘 要 随着电子商务的快速发展和物流行业的蓬勃发展,仓库管理成为了企业重要的一环。仓库管理涉及到商品的入库、出库、库存管理等一系列操作,对于企业的运营效率和成本控制具有重要影响。传统的仓库管理方式往往依赖于人工操作和纸质记录,存…

【Windows 常用工具系列 17 -- windows bat 脚本多参数处理】

请阅读【嵌入式开发学习必备专栏】 文章目录 bat 脚本命令行参数使用示例多参数处理使用示例遍历所有参数 bat 脚本命令行参数 在Windows批处理(.bat)脚本中接收命令行参数是一个常见的需求,这样的脚本能够根据提供的参数执行不同的操作。命…

Flutter页面状态保留策略

目的: 防止每次点击底部按钮都进行一次页面渲染和网络请求 1. 使用IndexedStack 简单,只需要把被渲染的组件外部套一层IndexedStack即可 缺点: 在应用启动的时候,所有需要保存状态的页面都会直接被渲染,保存起来. 对性能有影响 2. 使用PageController 实现较为复杂,但是不用…

# 深入理解 Java 虚拟机 (二)

深入理解 Java 虚拟机 (二) Java内存模型 主内存与工作内存 所有的变量存储在主内存(虚拟机内存的一部分)每条线程有自己的工作内存,线程对变量的所有操作(读取、赋值)都必须在工作内存中进行…

Vue移动端动态表单生成组件

FormCreate 是一个可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的表单生成组件。支持6个UI框架,适配移动端,并且支持生成任何 Vue 组件。内置20种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定。 帮助文档 | 源码下载…

数据库系统概论(第5版教材)

第一章 绪论 1、数据(Data)是描述事物的符号记录; 2、数据库系统的构成:数据库 、数据库管理系统(及其开发工具) 、应用程序和数据库管理员; 3、数据库是长期存储在计算机内、有组织、可共享的大量数据的集合&…

【Linux】线程Thread

🔥博客主页: 我要成为C领域大神🎥系列专栏:【C核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞👍收藏⭐评论✍️ 本博客致力于知识分享,与更多的人进行学习交流 ​ ​ 线程概述 …

【C语言】解决C语言报错:Double Free

文章目录 简介什么是Double FreeDouble Free的常见原因如何检测和调试Double Free解决Double Free的最佳实践详细实例解析示例1:重复调用free函数示例2:多次释放全局变量指针示例3:函数间传递和释放指针 进一步阅读和参考资料总结 简介 Doub…

nuget 包修改默认存放路径

平时使用 nuget packages 时,都是下载包文件到本地。 默认是在C盘,时间一久容量会高达几十个G,这样会拖慢系统运行效率。 这时需要修改包的下载位置。 打开nuget 包配置文件:Nuget.config 路径在 C:\Users\{UserName}\AppData…

网约车停运损失费:2、协商过程

目录 🍅点击这里查看所有博文 随着自己工作的进行,接触到的技术栈也越来越多。给我一个很直观的感受就是,某一项技术/经验在刚开始接触的时候都记得很清楚。往往过了几个月都会忘记的差不多了,只有经常会用到的东西才有可能真正记…

鸿蒙开发Ability Kit(程序框架服务):【FA模型切换Stage模型指导】 配置文件差异

配置文件的差异 FA模型应用在[config.json文件]中描述应用的基本信息,一个应用工程中可以创建多个Module,每个Module中都有一份config.json文件。config.json由app、deviceConfig和module三部分组成,app标签用于配置应用级别的属性&#xff…

探索 JQuery EasyUI:构建简单易用的前端页面

介绍 当我们站在网页开发的浩瀚世界中,眼花缭乱的选择让我们难以抉择。而就在这纷繁复杂的技术海洋中,JQuery EasyUI 如一位指路明灯,为我们提供了一条清晰的航线。 1.1 什么是 JQuery EasyUI? JQuery EasyUI,简单来…

从写下第1个脚本到年薪40W,我的测试开发心路历程!

对于任何职业来说,薪资始终都会是众多追求的重要部分。前几年测试行业还是风口,但是随着不断新鲜血液的加入,再加上就业大环境不好,企业也都在“降本增效”。目前内卷也是越来越激烈。不得不承认当下的现状,已经不仅仅…

Cadence计算器函数leafValue

与getData结合使用 leafValue( getData(“/output” ?result “dc”) 转自eetop https://bbs.eetop.cn/thread-931912-1-1.html

DM达梦数据库数学函数整理

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 💝&#x1f49…

期货交易记录20240626

文章目录 期货交易系统构建第一步、选品第二步、心态历练第三步、开仓纪律第四步、持仓纪律第五步、接下来的计划 2024年6月26号,开始写期货交易的第四篇日记。 交易记录:做了一笔纯碱的多单,在回撤了400个点左右后,看到企稳信号后…

记录正则提取文章

收到了个word版的电子书,需要拆分并转换为md存储到数据库中,便于搜索,记录下用正则提取文章的过程 word原文中有目录,可提取出目录后,在正文中根据目录来正则提取文章 正则的多行匹配 在匹配大量文章的时候&#xff…