老猎人(类似淘宝的App)

我要开发同款
proginn02315338802024年05月19日
142阅读
开发技术rabbitmq、maven、dubbo、前端小程序

作品详情

负责项目整体设计包括以上全部模块,主导技术选型。保证服务各个环节的高可用。避免单点故障问题。
维护了15个节点的elasticsearch集群。
从零搭建elasticsearch集群,并解决集群安全通信,跨集群数据同步问题。通过双集群的设计,来保证服务高可用。通过心跳机制,来动态切换集群。解决了elasticsearch分布式搜索引擎的脑裂问题。通过副本和快照来保证数据不丢失。
负责elasticsearch搜索引擎的后续优化工作。在数据集从8亿增长到14亿,数据容量从2.5T到5T的情况下,通过对集群的升级及规划和索引合理拆分,将聚类检索的时间从10秒降低到了2秒、普通检索从5秒降到1秒以下。集群写入速度提升到了2w/s。
使用nginx作为流量网关,使用gateway+nacos+sentinel 搭建了业务网关。期间改造了sentinel源码,来支撑生产环境下,业务网关零停服情况下的动态修改限流规则的需求。通过改源码将sentinel规则持久化到nacos,实现限流规则从客户端到sentinel的dashbord再到nacos的闭环。对鉴权、限流、等公共能力进行了抽取。通过对公共能力的抽取,将网关下沉为公共服务,发挥组内技术优势,为研究所内其他开发小组提供网关技术支持。帮助其它组解决用户鉴权,限流,降级等问题。
借助于sentinel的限流,实现了系统调用的安全防护。借助于sentinel的热点参数限流,实现针对用户的限流。达到了防爬的数据保护目的。
使用logstash + elasticsearch + kibana,搭建了一套日志收集分析系统。通过在流量网关进行适当的改造,配合前后端传参的适当改造。实现了系统审计以及用户行为分析的需求。配合报警工具,来洞察系统的服务能力,及时发现问题并发送报警。在凌晨生成用户行为分析的报告,并进行推送,为系统更好的扩展优化提供数据支撑。
维护了redis集群,用于存放用户的登录信息,鉴权中心分布式token;用于预热子系统,通过用户访问的审计结果,将系统经常访问到的数据,以及请求花费时间较长的数据,进行缓存预热。达到系统去短板的效果,提升用户体验。
JVM问题诊断,发现并解决内存泄露问题。参数调优,使系统处于最佳状态。
使用Docker + docker-compose来部署编排服务。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论