01 2020 档案
摘要:3. 与python交互 安装包 到中文官网查找客户端代码 联网安装 sudo pip install redis 使用源码安装 unzip redis-py-master.zip cd redis-py-master sudo python setup.py install 交互代码 引入模块 i
阅读全文
摘要:2.2、主从配置 一个master可以拥有多个slave,一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构 比如,将ip为192.168.1.10的机器作为主服务器,将ip为192.168.1.11的机器作为从服务器 设置主服务器的配置,然后将服务重启 bind 19
阅读全文
摘要:2.1、发布订阅 发布者不是计划发送消息给特定的接收者(订阅者),而是发布的消息分到不同的频道,不需要知道什么样的订阅者订阅 订阅者对一个或多个频道感兴趣,只需接收感兴趣的消息,不需要知道什么样的发布者发布的 发布者和订阅者的解耦合可以带来更大的扩展性和更加动态的网络拓扑 客户端发到频道的消息,将会
阅读全文
摘要:1.6、zset sorted set,有序集合 元素为string类型 元素具有唯一性,不重复 每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序 元素的score可以相同 命令 设置 添加 ZADD key score member [score member
阅读全文
摘要:1.5、set 无序集合 元素为string类型 元素具有唯一性,不重复 命令 设置 添加元素 SADD key member [member ...] 获取 返回key集合所有的元素 SMEMBERS key 返回集合元素个数 SCARD key 其它 求多个集合的交集 SINTER key [k
阅读全文
摘要:1.4、list 列表的元素类型为string 按照插入顺序排序 在列表的头部或者尾部添加元素 命令 设置 在头部插入数据 LPUSH key value [value ...] 在尾部插入数据 RPUSH key value [value ...] 在一个元素的前|后插入新元素 LINSERT k
阅读全文
摘要:1.3、hash hash用于存储对象,对象的格式为键值对 命令 设置 设置单个属性 HSET key field value 设置多个属性 HMSET key field value [field value ...] 获取 获取一个属性的值 HGET key field 获取多个属性的值 HMG
阅读全文
摘要:键的命令 查找键,参数支持正则 KEYS pattern如keys *如keys '*a*' 匹配含有字母a的键 判断键是否存在,如果存在返回1,不存在返回0 EXISTS key [key ...] 查看键对应的value的类型 TYPE key 删除键及对应的值,创建时没有设置过期时间则一直存在
阅读全文
摘要:数据操作 redis是key-value的数据,所以每个数据都是一个键值对 键的类型是字符串 值的类型分为五种: 字符串string 哈希hash 列表list 集合set 有序集合zset 数据操作的全部命令,可以查看中文网站 接下来逐个介绍操作各类型的命令 数据库一共有16个,分别是0到15 切
阅读全文
摘要:安装 下载:打开redis官方网站,推荐下载稳定版本(stable) 解压 tar zxvf redis-3.2.5.tar.gz 复制:推荐放到usr/local目录下 sudo mv -r redis-3.2.3/* /usr/local/redis/ 进入redis目录 cd /usr/loc
阅读全文
摘要:摘自:https://www.cnblogs.com/lcword/p/11656524.html 1,redis官方下载地址:https://redis.io/download,redis 64位下载地址:https://github.com/ServiceStack/redis-windows,
阅读全文
摘要:在mysql中已经学习了索引,并知道索引对于查询速度的提升 mongodb也支持索引,以提升查询速度 步骤一:创建大量数据 执行如下代码,向集合中插入10万条文档 for(i=0;i<100000;i++) { db.t1.insert({name:'test'+i, age:i}) } 步骤二:数
阅读全文
摘要:2.5、与python交互 点击查看官方文档 安装python包 进入虚拟环境 sudo pip install pymongo 或源码安装 python setup.py 引入包pymongo import pymongo 类MongoClient 连接,创建客户端 无安全认证:client=py
阅读全文
摘要:2.4、备份 语法 mongodump -h dbhost -d dbname -o dbdirectory -h:服务器地址,也可以指定端口号 -d:需要备份的数据库名称 -o:备份的数据存放位置,此目录中存放着备份出来的数据 例1 sudo mkdir test1bak sudo mongodu
阅读全文
摘要:2.3、复制(副本集) 什么是复制 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性,并可以保证数据的安全性 复制还允许从硬件故障和服务中断中恢复数据 为什么要复制 数据备份 数据灾难恢复 读写分离 高(24* 7)数据可用性 无宕机维护 副本集对应用程序是透明 复制的工作
阅读全文
摘要:超级管理员 为了更安全的访问mongodb,需要访问者提供用户名和密码,于是需要在mongodb中创建用户 采用了角色-用户-数据库的安全管理方式 常用系统角色如下: root:只在admin数据库中可用,超级账号,超级权限 Read:允许用户读取指定数据库 readWrite:允许用户读写指定数据
阅读全文
摘要:高级操作 讲解关于mongodb的高级操作,包括聚合、主从复制、分片、备份与恢复、MR 完成python与mongodb的交互 2.1、聚合 aggregate 聚合(aggregate)主要用于计算数据,类似sql中的sum()、avg() 语法 db.集合名称.aggregate([{管道:{表
阅读全文
摘要:数据查询 基本查询 方法find():查询 db.集合名称.find({条件文档}) 方法findOne():查询,只返回第一个 db.集合名称.findOne({条件文档}) 方法pretty():将结果格式化 db.集合名称.find({条件文档}).pretty() 比较运算符 等于,默认是等
阅读全文
摘要:插入 语法 db.集合名称.insert(document) 插入文档时,如果不指定_id参数,MongoDB会为文档分配一个唯一的ObjectId 例1 db.stu.insert({name:'gj',gender:1}) 例2 s1={_id:'20160101',name:'hr'} s1.
阅读全文
摘要:数据类型 下表为MongoDB中常用的几种数据类型: Object ID:文档ID String:字符串,最常用,必须是有效的UTF-8 Boolean:存储一个布尔值,true或false Integer:整数可以是32位或64位,这取决于服务器 Double:存储浮点值 Arrays:数组或列表
阅读全文
摘要:集合创建 语法 db.createCollection(name, options) name是要创建的集合的名称 options是一个文档,用于指定集合的配置 选项参数是可选的,所以只需要到指定的集合名称。以下是可以使用的选项列表: 例1:不限制集合大小 db.createCollection
阅读全文
摘要:数据库切换 查看当前数据库名称 db 查看所有数据库名称 列出所有在物理上存在的数据库 show dbs 切换数据库 如果数据库不存在,则指向数据库,但不创建,直到插入数据或创建集合时数据库才被创建 use 数据库名称 默认的数据库为test,如果你没有创建新的数据库,集合将存放在test数据库中
阅读全文
摘要:MongoDB 是一个基于分布式 文件存储的NoSQL数据库 由C++语言编写,运行稳定,性能高 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案 查看官方网站 MongoDB特点 模式自由 :可以把不同结构的文档存储在同一个数据库里 面向集合的存储:适合存储 JSON风格文件的形式 完整的索
阅读全文
摘要:NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。指的是非关系型数据库。 随着访问量的上升,网站的数据库性能出现了问题,于是nosql被设计出来。 NoSQL的优点/缺点 优点: 高可扩展性 分布式计算 低成本 架构的灵活性,半结构化数据 没有复杂的关系 缺点: 没有
阅读全文
摘要:摘自:https://www.runoob.com/mongodb/mongodb-window-install.html MongoDB 下载 MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:htt
阅读全文
摘要:字符串函数 查看字符的ascii码值ascii(str),str是空串时返回0 select ascii('a'); 查看ascii码值对应的字符char(数字) select char(97); 拼接字符串concat(str1,str2...) select concat(12,34,'ab')
阅读全文
摘要:摘自:https://www.cnblogs.com/zhuifeng-mayi/p/9270592.html 是什么 mysql官网定义 The SHOW PROFILE and SHOW PROFILES statements display profiling information that
阅读全文
摘要:摘自:https://www.cnblogs.com/zhuifeng-mayi/p/9270592.html 1、普通索引 这是最基本的索引,它没有任何限制,比如上文中为title字段创建的索引就是一个普通索引,MyIASM中默认的BTREE类型的索引,也是我们大多数情况下用到的索引。 -–直接创
阅读全文
摘要:当一个业务逻辑需要多个sql完成时,如果其中某条sql语句出错,则希望整个操作都退回 使用事务可以完成退回的功能,保证业务逻辑的正确性 事务四大特性(简称ACID) 原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行 一致性(Consistency):几
阅读全文
摘要:摘自:https://www.cnblogs.com/cshaptx4869/p/10481749.html 一、基本概念 视图是一个虚拟表,是sql的查询结果,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据,在使用视图时动态生成。视图的数据变化会影响到基表,基表的数据变化也会
阅读全文
摘要:摘自: https://www.cnblogs.com/zhuifeng-mayi/p/10535311.html 数据库操作 1、开启数据库 net start mysql 2、登录数据库 mysql -u用户名 -p密码 mysql -hIP地址 -P端口 -u用户名 -p 3、创建数据库 cr
阅读全文
摘要:摘自: https://www.cnblogs.com/zhuifeng-mayi/p/9265075.html MySQL存储引擎简介 MySQL支持数个存储引擎作为对不同表的类型的处理器。MySQL存储引擎包括处理事务安全表的引擎和处理非事务安全表的引擎: MyISAM管理非事务表。它提供高速存
阅读全文
摘要:摘自:https://www.cnblogs.com/zhuifeng-mayi/p/9260659.html 关系型数据库: Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL 非关系型数据库: NoSql、Cloudant、MongoDb
阅读全文
摘要:Python中的list和tuple两种类型采用了顺序表的实现技术,具有前面讨论的顺序表的所有性质。 tuple是不可变类型,即不变的顺序表,因此不支持改变其内部状态的任何操作,而其他方面,则与list的性质类似。 list的基本实现技术 Python标准类型list就是一种元素个数可变的线性表,可
阅读全文
摘要:摘自:https://www.jianshu.com/p/1f1520db325d 双端队列是与队列类似的项的有序集合。 双端队列有两个端部,首部和尾部,并且项在集合中保持不变。双端队不同的地方是添加和删除项是非限制性的。可以在前面或后面添加新项;同样,可以从任一端移除现有项。 双端队列抽象数据类型
阅读全文
摘要:摘自:https://www.runoob.com/python3/python3-inputoutput.html 在前面几个章节中,我们其实已经接触了 Python 的输入输出的功能。本章节我们将具体介绍 Python 的输入输出。 输出格式美化 Python两种输出值的方式: 表达式语句和 p
阅读全文
摘要:timeit模块 timeit模块可以用来测试一小段Python代码的执行速度。 Timer是测量小段代码执行速度的类。 class timeit.Timer(stmt='pass', setup='pass', timer=<timer function>) stmt参数是要测试的代码语句(sta
阅读全文
摘要:算法效率衡量 执行时间反应算法效率 对于同一问题,我们给出了两种解决算法,在两种算法的实现中,我们对程序执行的时间进行了测算,发现两段程序执行的时间相差悬殊(214.583347秒相比于0.182897秒),由此我们可以得出结论:实现算法程序的执行时间可以反应出算法的效率,即算法的优劣。 单靠时间值
阅读全文
摘要:摘自:https://www.cnblogs.com/zeke-python-road/p/9565419.html 1.re.search函数 re.search 扫描整个字符串并返回第一个成功的匹配,如果匹配失败search()就返回None。 (1)函数语法: re.search(patter
阅读全文
摘要:摘自:https://www.cnblogs.com/an-wen/p/11180076.html HTTP协议简介 超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。
阅读全文
摘要:#!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2020/1/23 1:50 # @Author : liuyan # @File : test5_tcp_server_5协程gevent版本.py # @Software: PyChar
阅读全文
摘要:摘自:https://blog.csdn.net/aineko520/article/details/89223047今天继续进行日常python的练习。 greenlet、gevent两个安装了python之后是不自带的,需要自行下载安装,下面是WIN的安装方法。 1、首先下载greenlet、g
阅读全文
摘要:摘自:https://www.cnblogs.com/yjunzhang/p/http_raw_socket.html 在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互。 因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送
阅读全文
摘要:集线器: 能完成多个电脑的连接。组成一个网络。 任何数据都会以广播的形式发送,造成网络拥堵。 交换机: 能完成多个电脑的连接。组成一个网络。 学习前是广播,学习后是单播。 路由器: 连接不同的网络,使不同的网络之间互通。又称网关设备。 tcp/ip协议规定:网络号不同(跨网)不允许直接通信。不同的网
阅读全文
摘要:摘自:https://www.cnblogs.com/chusiyong/p/11389442.html 简介 TFTP协议全称为简单文件传输协议,是以UDP为基础的应用层协议,主要用于不同设备之间的文件传输。具有协议简单,易于实现的特点,常用于嵌入式设备开发中。 传输模式 数据的存储有不同的格式,
阅读全文
摘要:摘自:https://www.cnblogs.com/APeng2019/p/10719288.html#3、TFTP穿越NAT 目录 1、环境拓扑配置 2、TFTP协议学习 2.1、协议概述 2.2、TFTP报文类型 2.3、TFTP端口号分配 2.4、TFTP报文格式 2.4.1、Read re
阅读全文
摘要:摘自:https://blog.csdn.net/HFZeng/article/details/93843442 疑问 在调用socket的时候,我们会使用到listen()函数,里面有个参数叫backlog, 例如:socket.listen(5). 那么这个数字5到底代表什么意思呢? 网上有很多
阅读全文
摘要:摘自:https://blog.csdn.net/HFZeng/article/details/91577381 有时候我们会在python文件的顶部看到如下信息: 一般主要设置了环境变量及编码格式: 那么我们在PyCharm中该如何设置这戏默认的信息呢?如果是windows系统,在PyCharm中
阅读全文
摘要:# 百度搜索:python面试不得不知道的点——GIL# 摘自:https://blog.csdn.net/weixin_41594007/article/details/79485847 # 多线程并不会充分调用两个CPU# 多进程则是会完全调用两个CPU# GIL全局解释器锁(global in
阅读全文
摘要:摘自:https://www.cnblogs.com/lxy0/p/11398457.html 在新创建的子进程中,会把父进程的所有信息复制一份,它们之间的数据互不影响。 1|0使用os.fork()创建 该方式只能用于Unix/Linux操作系统中,在windows不能用。 1 import os
阅读全文
摘要:摘自:https://www.cnblogs.com/djdjdj123/p/12163911.html 模块进阶 Python有一套很有用的标准库(standard library)。标准库会随着Python解释器,一起安装在你的电脑中的。 它是Python的一个组成部分。这些标准库是Python
阅读全文
摘要:摘自:https://www.cnblogs.com/alexzhang92/p/9416692.html 垃圾回收 1. 小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间。 Python 对小整数的定义是 [-5, 257)
阅读全文
摘要:摘自:VMWare workstation 安装 CentOS 8后自适应调整分辨率(如1920x1080) 在 VMWare workstation安装CentOS 8后,不能自适应调整分辨率,需要手动安装driver: sudo yum install xorg-x11-drv-vmware 安
阅读全文
摘要:摘自:https://juejin.im/post/5c6b757b6fb9a049d74840cf 引言 作为一名程序开发者,翻查文档成为了每天都必须去做的事情。然而,由于使用到的知识和工具不相同,所以几乎每次都需要重新打开官网的文档进行搜索,而且不同知识和工具的文档还需要切换浏览器标签来浏览,十
阅读全文
摘要:Zeal——好用的离线 API 文档大全! 摘自: https://www.cnblogs.com/souldee/p/9523497.html 介绍作为一名程序员,工作中学习中免不了是要查询API文档的,毕竟我们能记住的东西有限,而且经常也会碰到某个API一时想不起来的情况,而每次还要打开网页去查
阅读全文
摘要:摘自:https://blog.csdn.net/gezailushang/article/details/84291092 摘自:https://blog.csdn.net/gezailushang/article/details/84291092 摘自:https://blog.csdn.net
阅读全文
摘要:Python语法糖系列 摘自:https://blog.csdn.net/five3/article/details/83474633语法糖说明语法糖(Syntactic sugar): 计算机语言中特殊的某种语法 这种语法对语言的功能并没有影响 对于程序员有更好的易用性 能够增加程序的可读性简而言
阅读全文
摘要:腾讯 119.29.29.29机房在北京,在北京ping此地址只用8ms 阿里http://www.alidns.com/setup/?spm=a2chw.13814944.0.0.7b211760hz0dGD#windows IPv4:223.5.5.5 223.6.6.6IPv6:2400:32
阅读全文
摘要:# -*- coding:utf-8 -*- # 带有通用参数的通用装饰器 def check_with_para(*args2, **kwargs2): def check(fn): def inner(*args, **kwargs): print("密码验证完毕,通过, args=%s,kwargs=%s"%(args, kwarg...
阅读全文
摘要:摘自:https://www.cnblogs.com/zhzhang/p/11375774.html
阅读全文
摘要:摘自:https://blog.csdn.net/weixin_41751625/article/details/79764791 展开 今天偶然看到了有一篇文章讲解了交换两个数字的方法,感觉很新颖,拿来说一下。 这种问题通常都是我们在学习java基础的时候可能就会做一些小练习,相信大多数人都能够做
阅读全文
摘要:dbm=-113+2*asu
阅读全文
摘要:摘自:https://www.cnblogs.com/shoshana-kong/p/9797656.html 1.查看所有网络连接信息 Windows键 + R ,在弹出的运行窗口中输入cmd,在cmd窗口中输入netstat-ano显示协议统计信息和当前的TCP/IP网络连接。 -a 显示所有连
阅读全文
摘要:window下用taskkill杀死进程 摘自:https://www.cnblogs.com/wangzhaobo/p/9200743.html TASKKILL [/S system [/U username [/P [password]]]] { [/FI filter] [/PID proc
阅读全文
摘要:摘自:https://blog.csdn.net/sxd125/article/details/53138797 今天在网上找了一个例子敲代码,因为我使用的是PyCharm,例子运行时需要带参数,开始不知道怎么带参数,网上搜了大半天,最终才找到自己想要的方法,记录一下。 代码中有需要使用到参数,如下
阅读全文
摘要:摘自:https://blog.csdn.net/kongshuai19900505/article/details/81364709 在描述命令行参数的时候,对其格式有些约定俗成的写法,各系统之间也有差别。一般采用的格式如下: 命令 <必选参数1|必选参数2> [-option {必选参数1|必选
阅读全文
摘要:非负整数:^\d+$ 正整数:^[0-9]*[1-9][0-9]*$ 非正整数:^((-\d+)|(0+))$ 负整数:^-[0-9]*[1-9][0-9]*$ 整数:^-?\d+$ 非负浮点数:^\d+(\.\d+)?$ 正浮点数 : ^((0-9)+\.[0-9]*[1-9][0-9]*)|([
阅读全文
摘要:摘自并整理:http://www.voidcn.com/article/p-acjqpctj-oc.html
阅读全文