摘要:
什么是消息队列(MQ) MQ全称为Message Queue 消息队列(MQ)是一种应用程序对应用程序的通信方法。MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断写入消息,而另一端则可以读取队列中的消息。这样发布者和使用者都不用知道对方的存在。 首先看下队列 import queue q 阅读全文
摘要:
文章参考:https://blog.csdn.net/xc_zhou/article/details/80837962 mongoengine 简介 pymongo来操作MongoDB数据库,但是直接把对于数据库的操作代码都写在脚本中,这会让应用的代码耦合性太强,而且不利于代码的优化管理 一般应用都 阅读全文
摘要:
6 文档操作(curd) 6.1 新增和修改 #单条插入与多条插入 #1、没有指定_id则默认ObjectId,_id不能重复,且在插入后不可变 #2、插入单条 # db.table2.insert({'b':2}) # 可以这样写,也可以下面的写法 user0={ "name":"lqz", "a 阅读全文
摘要:
1 Mongodb介绍 # 1 一个非关系型数据库(表和表间没联系,不能建外键),文档型数据库(json存储的) ## Mongodb可以存特殊的集合类型(一个字段可以存字典,列表)。mysql是不支持这种格式的,如果要存,只能转成json格式存到字段里。实在没办法了,在字段里存json格式,加删数 阅读全文
摘要:
分布式锁 作用:不同系统上的不同进程,去抢一把锁,谁抢到了,谁才能改数据 要求:高可用性,可冲入性(拿到锁的节点挂了,得有超时过期机制) 实现方式: 基于数据库实现分布式锁; 基于缓存(Redis等)实现分布式锁; 基于Zookeeper实现分布式锁; redis实现分布式锁 # 1 分布式锁: 锁 阅读全文
摘要:
0Centos7 安装jdk1.8 一 下载linux版jdk 地址:https://www.oracle.com/java/technologies/oracle-java-archive-downloads.html 找到对应版本 下载:需要账号(从网上找个别人的账号或者注册一个即可:账号269 阅读全文
摘要:
MySql主从同步(基于docker) 主从配置原理 # 1 主从同步的原理 mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面; 2)master有一个I/O线程将二进制日志发送到slave; 3) slave有一个I/O线程把master发送的二进制写入到relay 阅读全文
摘要:
缓存更新策略 # 有LRU/LFU/FIFO三种算法# LRU:Least Recently Used,没有被使用时间最长的 # LRU配置 maxmemory-policy:volatile-lru (1)noeviction: 如果内存使用达到了maxmemory,client还要继续写入数据, 阅读全文
摘要:
GEO 存储经纬度,计算两个点之间的距离,统计某个点周围多少距离的其他点 北京:116.28,39.55 天津:117.12,39.08 可以计算天津到北京的距离,天津周围50km的城市,外卖等 5个城市纬度 城市经度纬度简称 北京 116.28 39.55 beijing 天津 117.12 39 阅读全文
摘要:
Redis 介绍安装配置 #1 只有5种数据结构: -多种数据结构:字符串,hash,列表,集合,有序集合 #2 单线程,速度为什么这么快? -本质还是因为是内存数据库 -epoll模型(io多路复用) -单线程,没有线程,进程间的通信 # 3 linux上 安装redis#下载 (测试放在/hom 阅读全文