Dataone数据管理平台
开发环境:Intellj IDEA、Maven 、JDK1.8 、Mysql、Oracle、DM(达梦数据库)、Redis 、Git(版本管理工具)
所用技术:Spring、SpringMVC、SpringData JPA、Spring Boot、Spring Cloud、Kafka、canal、Nginx、spring security Oauth2
项目描述
浪擎DataOne项目是基于微服务分布式架构的数据管理平台,是基于国产化政策下产生的,它的功能有数据迁移、集成、融合与共享管理,为解决数据孤岛问题,构建数据中台与共享发布服务,提供多源异构数据的迁移、汇聚与融合技术实现方案,从而实现数据的流动,释放数据的价值。使用比较流行的前后端分离的技术,前端使用react技术,后台基于 Spring Boot+Spring Cloud 微服务分布式开发技术,每个微服务都对外提供了 Rest 风格,然后通过 http 协议 进行服务间的远程调用,也使用了 Redis、Kafka,JWT 等主流技术。
责任描述
认证授权:
相对于传统项目的有状态登录,该项目使用SpringSecurity+Oauth2来实现项目的单点登录。项目使用Jwt+RSA非对称加密方式,用户一旦完成登录,认证中心将会把使用密钥生成Token存入Redis中,将短令牌放入Cookie返回浏览器。用户访问其他服务经过网关时,根据Cookie中的短令牌查询Redis中是否存在对应的长令牌。如果存在,将会把Token封装到请求中路由给其他微服务。如果不存在,网关将请求转发至登录页面进行登录。
Oracle解析日志:
首先生成字典信息文件,oracle的logminer使用一个字典文件来实现Oracle内部对象名称的转换,如果没有这个字典文件,则直接显示内部对象编号,添加需要分析的日志文件,当添加了需要分析的日志文件后,就可以让LogMiner开始分析了,我们就可以通过访问与LogMiner相关的几个视图来提取我们需要的信息了。其中在v$logmnr_logs中可以看到我们当前分析的日志列表,如果数据库有两个实例(即OPS/RAC),在v$logmnr_logs中会有两个不同的THREAD_ID,最后我们可以执行退出LogMiner分析过程,你也可以直接退出SQL*PLUS,它会自动终止。