zoukankan      html  css  js  c++  java
  • 使用kibana进行简单的CRUD和版本控制

    使用:

    ##创建文档之前先创建索引
    PUT /toov5
    ##查询索引
    GET /toov5
    ##创建文档  /索引/类型/id
    PUT /toov5/user/1
    {
      "name":"Jack",
      "age":66,
      "sex":0
    }

    ##删除索引
    DELETE /toov5

    
    GET /toov5/user/1

    { } 表示一行数据  toov5 表示数据库

    版本控制:

    1.为什么要进行版本控制

    为了保证数据再多线程操作下的准确性

    2.悲观锁和乐观锁(CAS无所机制)

    悲观锁:假设会发生并发冲突,屏蔽一切可能违反数据准确性的操作

      

    乐观锁:假设不会发生并发冲突,只在提交操作是检查是否违反数据完整性。

     联系version字段 就知道了!!!   乐观锁版本控制

     如果在修改时候传入的version是7 但是 查看当前版本是6 不一致!   修改时候 哪个线程执行的块 哪个就改了

     悲观锁需要等待 效率低一些

    3.内部版本控制和外部版本控制

    内部版本控制:_version自增长,修改数据后,_version会自动的加1     解决并发情况下的一致性问题

    外部版本控制:为了保持_version与外部版本控制的数值一致

    使用version_type=external检查数据当前的version值是否小于请求中的version值   

  • 相关阅读:
    nginx与uwsgi介绍
    Pycharm快捷键
    短信和图片验证码
    linux部署Django脱坑指南
    面试题汇总(七)
    面试题汇总(六)
    面试题汇总(五)
    面试题汇总(四)
    面试题汇总(二)
    iOS Block的本质(四)
  • 原文地址:https://www.cnblogs.com/toov5/p/10296087.html
Copyright © 2011-2022 走看看