zoukankan      html  css  js  c++  java
  • 知识点总结

    一、项目介绍

    1.流程的发起

    1. 校验机构代码是新增还是存量
    2. 获取activity的流程号
    3. 将发起流程插入流程信息表
    4. 如果是存量机构,同步数据
    5. 通过流程号获取正在运行的任务号,将任务推至下一个节点

    二、配置中心-配置管理

            1.字段配置信息管理 -表中字段名、控件类型

             2.表配置信息管理- 表名、表的类型

    三、业务参数的查询,报表、线路的查询

    四、业务场景管理-业务场景的定制

    • 处理表顺序
    • 已有表修改表顺序
    • 新表赋予新的属性
    • 对表修改进行校验

          业务场景配置添加子系统

    五、合同,履约到期提醒,发邮件。

    1. 根据时间查询到期合同
    2. 启动合同到期提醒代办流程
    3. 获取用户信息,发邮件

    知识点

    1.线程池

    一个线程池包括四个基本部分

    1. 线程池管理器:用于创建线程和管理线程
    2. 工作线程: 线程池中的线程,在没有任务时处于等待状态
    3. 任务接口: 每个任务必须实现的接口,已供工作线程调度,任务执行
    4. 任务队列:用于存放没有处理的任务

    2.ThreadPoolExecutor包括的参数:核心线程池的大小、最大线程池的大小、线程最大空闲时间、线程等待队列、拒绝策略

    3.dubbo基础

    • 暴露服务的服务提供方
    • 调用远程服务的服务消费方
    • 服务注册与注册中心
    • 统计服务的调用次数和调用监控中心
    • 服务运行器
    1. 启动时注册提供方服务
    2. 消费者订阅服务的列表,变更时推送服务地址列表
    3. 消费者随机调用服务地址,失败后重新选择
    4. 后台定时采集服务的调用次数和时间

    4.dubbo的配置方式

      spring的配置方式与api的配置方式

    5.dubbo默认的通信框架 netty

    6.dubbo 的负载均衡策略 

      随机、 轮询、最少活跃调用次数、一致性hash

    7.乐观锁与悲观锁

    乐观锁:总认为不会产生并发问题,每次去取数据的时候总认为不会被线程进行修改。因此不会上锁,但是在更新时会判断其他线程之前有没有对数据进行修改。一般采用版本号机制或cas操作

    乐观锁多用于多读的应用类型。

    悲观锁:每次取数据的时认为其他线程会修改,所以都会加锁,当其他线程想要访问数据时,都需要阻塞挂起,依靠数据库实现。

    8.redis主从复制

    • 主节点负责写,从节点负责读
    • Redis持久化的两种方式 RDB和AOF

      rdb对数据执行周期持久化 。AOF每条命令写入日志

      redis 支持的数据类型

      String,list、set、hash 、Zset

    9.持久化是把内存数据写到磁盘中,防止服务器宕机内存数据消失

    10.存储结构:内容是Redis通讯协议RESP格式的命令文本存储

    11.redis哨兵模式

    监控:哨兵会不断的检查主服务器和从服务器是否运行正常

    提醒:当被监控的某个Redis服务器出现问题时,哨兵可以通过api向管理员发送通知

    自动故障迁移:当一个主服务器不能正常工作时,哨兵会开始一次自动故障迁移操作。

    12.redis分布式锁的实现方式

    先拿setnx来抢占锁,抢到之后,再用expire给锁加一个过期时间,防止锁忘记释放

    13.使用sub/pub主题订阅模式。实现1:N的消息队列

    14.什么是缓存穿透?如何避免

    一般的缓存系统都是按照key去缓存查询。如果不存在对应的value,就去后台查询。一些恶意的请求故意查询不存在的key,请求过大时,就会对系统造成很大的压力。

    避免:

    1.对查询结果为空的情况也要缓存,将缓存时间设置短一点,或者该KEY对应的数据insert后清理缓存

    2.对一定不存在的key进行过滤,可以把所有可能存在的key放到一个大的biemap中,查询是过滤

    15.缓存雪崩

    当缓存服务器重启或者大量缓存集中在某个时间段失效。这样在失效的时候会给后台带来很大的压力

    避免

    1.在缓存失效后,通过加锁或者队列来控制读数据库写缓存的线程数量

    2.做二级缓存,a为原始缓存。b 为备份缓存。a失效后访问b

    3.不同的key设置不同的过期时间

    16.应用场景

    • 会话缓存
    • 消息队列
    • 发布,订阅消息
    • 商品列表、评论列表

    17.fushdb 删除当前选择的数据库中的key

         fushall 删除所有数据库中的键

    人这辈子没法做太多事情,所以每做一件事都要做到精彩绝伦。 因为,这就是我的宿命。人生苦短,你明白吗? 所以这是我为人生做出的选择
  • 相关阅读:
    HDU3718 Similarity 最大权值匹配
    HDU2853 Assignment 最大权值匹配+简直是太神了
    HDU3488 Tour 再次感受到KM的强大
    ZOJ2575 Full of Painting 动态规划
    ZOJ2571 Big String Outspread 模拟
    POJ3565 Ants 空间点对不相交匹配最小权值匹配
    Fleury(弗罗莱)算法求欧拉路径
    HDU2426 Interesting Housing Problem 最大权值匹配不能完成匹配的处理
    POJ1392 Ouroboros Snake 欧拉回路
    HDU2255 奔小康赚大钱 最大权值匹配
  • 原文地址:https://www.cnblogs.com/junjun1578/p/11937342.html
Copyright © 2011-2022 走看看