桂核酸项目:助力广西大规模核酸检测
在新冠疫情期间,为满足广西 6000 万居民核酸采集检测需求,开发了桂核酸系统,我作为技术顾问负责架构设计等工作。
系统采用 Spring Cloud 微服务架构,拆分为用户信息、采集点管理等多个服务,通过 Eureka 注册发现、Feign 远程调用,结合分层架构,确保服务解耦与开发维护的便捷性。
数据库方面,选用 MySQL 并深度优化,为高频字段建索引、优化 SQL。采用 ShardingSphere 分库分表,结合主从复制、读写分离与 MHA 自动切换,保障高可用与数据一致。
缓存和消息队列应用上,Redis 缓存热点数据,用分布式锁保证一致性,多种策略防范缓存问题;RabbitMQ 实现异步任务与流量削峰,解耦系统。
ElasticSearch 用于存储核酸检测历史数据,建立高效索引,通过监听 Binlog 实时同步数据。采用集群部署并定期优化,确保查询性能。
利用 Flink CDC 实时捕获 MySQL 数据变更,经自定义函数处理后写入 Doris,实现数据实时同步,为数据分析和报表生成提供支持。
Nginx 作为负载均衡器,采用多种算法分发请求,提升并发处理与安全性;Tomcat 服务器集群部署应用,确保会话一致与高可用。
监控与运维搭建 Prometheus 和 Grafana 系统,实时监控性能指标并告警。用 Ansible 自动化部署配置,Docker 和 Kubernetes 容器化管理,Kubernetes 自动伸缩保障高并发稳定。
该项目成果显著,成功应对高并发,保障数据准确安全,实现全流程信息化管理,提高检测效率、缩短结果反馈时间。ElasticSearch 助力历史数据查询,Flink CDC 与 Doris 结合实现实时数据分析,为疫情防控提供有力支撑。