一、2021.11 - 2023.05 中海油开发生产操作平台一期,二期
业 绩:
2021.11-2022.09完成中海油开发生产操作平台一期从0到1的过程,最终交付给用户使用。
2022.10-2023.05 开发生产操作平台二期在一期的基数上,将中海油原来其他老的项目功能集成到开发生产平台上。
内 容:
1.中海油开发生产操作平台一期的需求迭代中的设计、开发、联调及配合测试发布工作。
2.系统日常监控维护.
3.系统的迭代升级
技术栈:
● 后端技术栈:spring boot、mybatis、Spring-Cloud-Gateway(微服务网关),Spring-Cloud-Auth2(鉴权),Nacos(注册中心及配置中心),rabbitmq(消息服务),Redis(缓存服务),MinIO(非结构化数据存储),
● 数据库:mysql(开发生产操作平台一期),人大金仓国产数据库(开发生产操作平台二期)
● 前端技术栈:vue+elementui
● 自动化部署:Jenkins
主要功能以及应用技术介绍:
● 实现中海油开发生产操作平台一期中的搜油功能,使用java+ElasticSearch技术,实现油田,油井的查询与聚合统计。
● 实现中海油开发生产操作平台一期中的地质油藏综合查询功能,此功能业务逻辑比较多,有些数据还需要调用别的微服务,如果按照传统的线性执行6步操作,预计花费5.6秒才能看到结果,这样客户显然是不能接受的,所以针对此采用线程池加异步编排的方式,用多线程同时完成这6步操作,只需要1.5秒就可以完成响应。
● 实现中海油开发生产操作平台一期中的油田项目的数据同步,因油田项目主数据在其他的微服务中注册维护,别的微服务需要用到油田项目数据,就需要实现数据同步,通过rabbitmq实现项目主数据的同步
● 对中海油开发生产操作平台一期中的一些经常要访问且变化不大的三级导航等数据缓存到redis中,使用redis实现缓存加分布式锁功能,分布式锁的实现主要利用redis中的SETNX命令实现原子加锁操作,以及lua脚本的原子删除锁操作来实现分布式锁。