console & node-console
2016-12-27 15:03:43   0  举报             
     
         
 不涉及后端的改动前端可以独立发布
    作者其他创作
 大纲/内容
 newconsole/xxx.html
    失败
  未实现接口
  nginx
  注册服务
  IBigDataService
  接口路由
  dubbo service
  nodeConsole
  3
  java后台
  其他接口请求
  浏览器
  生成的文件拷贝到指定服务器
  nodeConsole是否实现
  ...
  express
  拼装活动的html代码
  读取compose下wrap.html存入变量wrapstr、head.html存入变量headstr、body.html存入变量bodystr
  html文件保存文件夹
  f
  console保存新闻富文本数据和TDK信息接口
  活动模板生成活动流程
  数据存取
  IBankService
  dubbo/redis
  newConsole
  Dubbo协议通信
  dubbo
  server
  tomcat服务
  解析模板是使用parseModule函数将模板中的tpl/js/css解析拼装成类似fis3打包的结果
  参数检查
  组装成html返回
  redis
  接口请求
  发起生成活动
  db0
  数据库
  node-console详图
  db2
  实例化redis
  否
  用户鉴权
  返回html
  方案二、tomecat服务器渲染
  登录接口请求
  是
  数据处理
  Browser
  2
  日志写入
  nodeConsole结构
  4
  成功
  1
  node-console部署简图
  前端传递的TDK信息和固定前端模板拼装成html
  结束
  IAssetAccountService
  PM2
  oldConsole
  http/https通信
  生成html上传html服务器
  读取和解析地址控件模板compose/common/address
  g
  获取数据
  nodeConsole、newConsole、oldConsole部署图
  保存数据
  已经实现的接口
  图形验证码接口
  所有模板解析结果的css追加到headerstr,js和请求数据追加到bodystr
  6
  读取和解析统计控件模板compose/common/statistics
  安全过滤
  404处理
  请求参数统一
  缓存用户信息和权限列表
  读取和解析报名控件模板compose/common/apply
  浏览器(https://console.lcfarm.com/)
  Fork/Cluster
  新闻页面请求
  获取用户登录态和权限列表
  数据传入dubbo
  路由标准化
  实例化Dubbo
  zookeeper
  d
  nodeConsole处理
  e
  异常处理
  拼装wrapstr、headstr、bodystr生成html文件
  根据选择的模板读取compose/module/下对应的模板并解析模板
  b:调用isLogin接口
  console/xxx.html
  badjs错误监控
  Dubbo服务
  转到newConsole
  获取服务
  方案一、创建时生成html静态页面
  方案的详细描述:        newConsole和nodeConsole同时共存;所有的接口请求经过nginx分发到nodeConsole服务器,主要分为两种情况:        【1】如果是登录、图形验证码这两个接口(不需要登录态判断),nodeConsole直接将请求转发到newConsole让其处理(因为如果直接在nodeConsole处理,则newConsole无法设置用户的登录态),接收处理结果即可。                其中nodeConsole获取到登录成功的返回以后会请求dubbo服务获取用户的信息和权限列表并连同用户session信息都保存到redis的db2中。这样下次来自前端的请求nodeConsole就知道该用户是否登录以及是否拥有接口的访问权限。流程为:1/2/d/3/4/e/5/6        【2】如果是其他接口,则会先去db2获取用户的登录态和权限列表,分两种情况                1)如果没有获取到用户信息或者用户未登录或者用户没有该接口权限,则直接返回,流程为:1/2/5/6;                2)如果用户鉴权成功,则分两种情况,                    2.1) 如果nodeConsole如果nodeConsole已经实现了该接口,则执行该实现即可,流程为:1/2/b/c/f/g/5/6                    2.2) 如果nodeConsole没有实现该接口,则将请求转发到newConsole,流程为:1/2/b/c/d/3/4/e/5/6    【注意】:之所以要调用b(调用islogin接口),目的是刷新newConsole中用户登录态的有效时间。保持newConsole和nodeConsole的用户登录态一致。
  获取的TDK信息和固定前端模板拼装成html
  c:返回isLogin结果
  5
   
 
 
 
 
  0 条评论
 下一页