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

相关推荐
朝九晚五ฺ1 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
Kkooe2 小时前
GitLab|数据迁移
运维·服务器·git
久醉不在酒3 小时前
MySQL数据库运维及集群搭建
运维·数据库·mysql
ZHOU_WUYI3 小时前
3.langchain中的prompt模板 (few shot examples in chat models)
人工智能·langchain·prompt
如若1233 小时前
主要用于图像的颜色提取、替换以及区域修改
人工智能·opencv·计算机视觉
老艾的AI世界4 小时前
AI翻唱神器,一键用你喜欢的歌手翻唱他人的曲目(附下载链接)
人工智能·深度学习·神经网络·机器学习·ai·ai翻唱·ai唱歌·ai歌曲
DK221514 小时前
机器学习系列----关联分析
人工智能·机器学习
Robot2514 小时前
Figure 02迎重大升级!!人形机器人独角兽[Figure AI]商业化加速
人工智能·机器人·微信公众平台
虚拟网络工程师4 小时前
【网络系统管理】Centos7——配置主从mariadb服务器案例(下半部分)
运维·服务器·网络·数据库·mariadb
BLEACH-heiqiyihu4 小时前
RedHat7—Linux中kickstart自动安装脚本制作
linux·运维·服务器