《社区人员管理》实战案例设计&个人案例分享

京东云开发者
• 阅读 306

作者:京东科技 刘宗恺

一、项目背景

北京市疫情防控一体化平台是以“京办”为支撑,集病例流调、排查管控、隔离管理、人员转运、监测评估于一体的疫情防控平台,秉承五位一体统筹、现有体系融通、共性能力支撑、高效部门系统、快速局部突破的理念,进行建设。

《社区人员管理》实战案例设计&个人案例分享

1.1 技术挑战

功能:多系统协作、多端支持、多角色支持

非功能: 数据、安全、事件高并发的支撑

1.2 架构挑战

庞大多系统流转集成方案、政务网互联网的多端开发适配

需求变更下的灵活设计、数据流设计

二、系统架构设计

防疫系统五位一体的模块拆分:

2.1 确定业务的主题边界

《社区人员管理》实战案例设计&个人案例分享

2.2 全景分析-领域事件流

《社区人员管理》实战案例设计&个人案例分享

2.3 场景驱动-分解任务

《社区人员管理》实战案例设计&个人案例分享

2.4 业务中台

《社区人员管理》实战案例设计&个人案例分享

2.5 数据治理

《社区人员管理》实战案例设计&个人案例分享

2.6 人员数据鲜活

《社区人员管理》实战案例设计&个人案例分享

三、性能、稳定性设计

3.1 应用层

3.1.1 系统稳定性

《社区人员管理》实战案例设计&个人案例分享

3.1.2 系统高可用

高可用:故障频率要低、故障范围要小、故障恢复要快

《社区人员管理》实战案例设计&个人案例分享

3.1.3 系统柔性可用

《社区人员管理》实战案例设计&个人案例分享

3.1.4 事务中不包含外部调用(不建议)

《社区人员管理》实战案例设计&个人案例分享

3.1.5 人员核酸比对

《社区人员管理》实战案例设计&个人案例分享

•安全保障:系统安全、网络安全、数据安全

•高可用性:数据备份、负载均衡、异地多活

•容量预测:预计最大抗原检测结果上报

3.2 网络层(流量管控)

•五位一体系统分别部署在多朵云,Keepalived、心跳、故障转移。

•专线带宽及现在使用情况,专线是否与其他业务系统共用,是否有备线。

•机房出入口网络监控,每个机房流量是否均衡,或每台机器的流量是否均衡。

•网络出、入口稳定性做好监控及应急方案。

•流量负载,限流。

•多级负载架构:(级联层次越多,请求在系统中的路径越长,系统性能相应也会受一定影响)

《社区人员管理》实战案例设计&个人案例分享

3.3 数据层

3.3.1 容灾备份

•容灾系统按国际标准分为七个层次,0级:无异地备份,1级:实现异地备份,2级:热备份站点备份,3级:在线数据备份,4级:定时数据备份,5级:实时数据备份,6级:零数据丢失。

•排查管控模块:风险人员研判,大数据时空筛查的相关能力和数据,需做到定时数据备份。

《社区人员管理》实战案例设计&个人案例分享

3.3.2 异地多活

数据同步(数据库出现异常主从节点,故障转移)

•冗余的越多,系统的故障率就越低,并且是呈指数级降低。

•任何一地故障,另一地都可提供完整服务。

•多机房同时对外提供服务,确保服务随时可用。同时尽量可以实现同机房调用。

《社区人员管理》实战案例设计&个人案例分享

3.4 特殊压测

•全场景压测,压测共享资源瓶颈,如用到了加解密的服务特别压测下加解密。

•混沌测试,模拟cpu使用率过高、内存过高、磁盘空间满了;应用连接的数据库超时、缓存超时、依赖服务中断等。

chaosblade支持模拟的场景:

《社区人员管理》实战案例设计&个人案例分享

定位分析:

《社区人员管理》实战案例设计&个人案例分享

四、通用性设计

面向未来考虑:不仅仅是五位一体,跨场景:通用性和普适性设计,跨区域跨城市:换一套区域是否可以复用,比如在另一个城市建立一个相同的项目。

4.1 泛化场景(自上而下/自下而上)

《社区人员管理》实战案例设计&个人案例分享

4.2 抽象流程编排能力

《社区人员管理》实战案例设计&个人案例分享

•编排利器:对于复杂的业务逻辑,需要按业务最小粒度实现一个个组件,每个组件保持单一职责。同时定义一个编排规则文件, 即可使复杂业务系统最大程度解耦,同时最大化程度实现组件复用,组件热编排等独有特性。

•优雅稳定:所有的组件互相独立且统一,利用上下文数据槽来传递信息,不同线程之间的数据槽安全隔离。

•规则轻量:串行,并行,条件选择,多层嵌套子流程等。 可以在规则中嵌入JavaScriopt,Groovy等脚本语言,可以实现热刷新的特性。

•监控治理:监控每个组件的运行耗时,统计每个组件排行。

•可视化操作:支持页面动态编排组件服务。

4.3 泛化场景(AI赋能)

项目成本:人力成本,实施成本、项目交付吃紧,通过AI赋能,减少一部分工作量,推进和实施工作。

通过AI视频化能力,降低运营侧交付成本,通过可视化平台手段的手段,低成本、高效率自动化生成视频。

•PPT+非线性编辑系统

《社区人员管理》实战案例设计&个人案例分享

•文案转换成视频的过程

《社区人员管理》实战案例设计&个人案例分享

•FAQ问题环节

洽谈、讲解、展示;收集客户反馈问题,通过数字人视频播报,减少实施交付成本。

五、收获沉淀

•设计是一个让人梦想成真过程,开始编码、测试、调试之前进行需求分析和架构设计,才能保证关键方面都做正确;

•稳定的需求只是一个神话,架构的好坏,很大部分取决于它应对变化灵活性。如何复杂去掉而得到简单,是一种抽象;

•架构设计终极目标,用最小的人力成本来满足构建和维护该系统的需求。面向未来考虑:通用和扩展性;


CASE分享 -智能视频生产平台

1 业务与技术需求简介

•智能视频生产平台,是基于语音TTS、2D真人+3D卡通数字人、多样化图表、视觉算法融合、动画渲染等智能AI方式进行视频合成的过程。可基于讲解文案生成每种元素的子视频,将每个子视频按照一定的时间顺序和空间位置组合起来,生成最终的视频。

2 技术与业务场景引入、相关人、态度、立场

•支持对内对外多个场景的视频生产需求,具备了高质量视频的规范化生产能力。可根据产品特征和数据缺失情况,自适应增减版式内容;

•视频元素生成包括文字、前景、背景等元素的展示效果:

•智能字幕:实现了文本重要信息的自动提取与强调效果,并能够根据文本内容进行合理的字幕分页分行;

•图文关联:已积累近千张金融领域的图片素材,通过文本中的关键字与图片素材标签的对应规则,实现了从文本到图片的自动映射,增强视频的动态效果;

•数据可视化:实现了数据的动态可视化引擎,可根据请求选择相应的动态图表,支持折线图、柱状图、饼图等一系列图表类型;

3 场景下的问题、挑战、冲突是什么

•在搭建这个平台过程中也遇到一些挑战,比如视频模板多,业务场景多。大家对于细节调整是非常频繁。当发现这个情况后,意识到API模式已无法满足端到端应用诉求,需要提供一套可视化平台,能够具备一些标准化、自动化的能力,以更好的支持业务。因此我们设计了一套在线可视化编辑器,既能满足算法设计运营调优和反馈,又能沉淀形象、声音模板等,大大提升了我们平台的复用性。

4 如何分析技术与业务场景,如何形成研发或应用策略

•技术选型,抽象一套公共视频组件及模板IR层,用了IR平台之后,如新加数字人需求,只需要修改部分IR数据,可以无缝接入整个平台,复用原来能力。

5 做了什么,取得了什么效果、反馈

•首先在科技内部做了视频说明书、保险、金融百科、基金种草,完成了每月3150只视频线上投放,效果优于外部引入。为C端业务提供批量化、规范化的视频生产服务。

•保险知识讲解,每周投放7条视频,在视频号、抖音、快手等平台的交互数据与真人录制视频持平。

•视频说明书,每月完成2400+视频合成,替代外部引入,转化率较图文形式有明显提升。

•零售小家电,已与7家品牌商建立合作,累计投放100个视频,商详页视频转化率高于其他页面,购买转化率较静态图片介绍方式提升。通过实效视频资讯来吸引用户,增强用户黏性。

•每日经济新闻,批量生产新闻资讯视频,客户在两会期间使用,效果获媒体一致好评。树立公司品牌形象。

•人民日报,批量生产新闻资讯视频,客户已在全国范围内的20000+大屏幕推广。

《社区人员管理》实战案例设计&个人案例分享

京东云、百度APP数字人联合解读618消费趋势,降本增效释放商业价值;数据显示,微博阅读总量超1.2亿,微博视频热搜榜前10位。

通过视频生产平台制作编辑,数字人形象成功登录京东云峰会城市、零售主题论坛,展示效果从声音、图像、清晰度、动作得到现场嘉宾与运营方高度认可。

《社区人员管理》实战案例设计&个人案例分享

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Wesley13 Wesley13
3年前
PPDB:今晚老齐直播
【今晚老齐直播】今晚(本周三晚)20:0021:00小白开始“用”飞桨(https://www.oschina.net/action/visit/ad?id1185)由PPDE(飞桨(https://www.oschina.net/action/visit/ad?id1185)开发者专家计划)成员老齐,为深度学习小白指点迷津。
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Easter79 Easter79
3年前
SpringBoot整合Redis乱码原因及解决方案
问题描述:springboot使用springdataredis存储数据时乱码rediskey/value出现\\xAC\\xED\\x00\\x05t\\x00\\x05问题分析:查看RedisTemplate类!(https://oscimg.oschina.net/oscnet/0a85565fa
Wesley13 Wesley13
3年前
Java日期时间API系列36
  十二时辰,古代劳动人民把一昼夜划分成十二个时段,每一个时段叫一个时辰。二十四小时和十二时辰对照表:时辰时间24时制子时深夜11:00凌晨01:0023:0001:00丑时上午01:00上午03:0001:0003:00寅时上午03:00上午0
Stella981 Stella981
3年前
Jenkins 插件开发之旅:两天内从 idea 到发布(上篇)
本文首发于:Jenkins中文社区(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fjenkinszh.cn)!huashan(https://oscimg.oschina.net/oscnet/f499d5b4f76f20cf0bce2a00af236d10265.jpg)
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_