当前位置: 首页 > news >正文

网站运营怎么样seo点击排名

网站运营怎么样,seo点击排名,湖南网站优化推广,北京网络公司信息redis非关系型数据库#xff0c;缓存型数据库 关系型数据库和非关系型数据库的区别 关系型数据库 关系型数据库是一个结构化的数据库。 记录方式#xff1a;行和列 行的作用#xff1a;记录对象的属性 列的作用#xff1a;声明对象 表与表之间是有关联的#xff1a…redis非关系型数据库缓存型数据库 关系型数据库和非关系型数据库的区别 关系型数据库 关系型数据库是一个结构化的数据库。 记录方式行和列 行的作用记录对象的属性 列的作用声明对象 表与表之间是有关联的外键关联、左连接、右连接、内连接。使用sql语句来对指定的表、库进行增删改查。 在创建表时设计好了表的结构。按照表结构存储数据。数据与表结构不匹配那么存储数据会失败。 非关系型数据库 非关系型数据库nosql not only sql 非关系型数据库不需要定义库也不需要定义表的结构而且直接记录即可每条记录可以有不同的数据类型、字段。甚至字段个数都可以自定义。 redis keyvalue 键值对形式存储。每个键之间没有直接关联。库与库之间互相独立。 区别 1、 存储方式不同关系型数据库需要提前声明数据类型。非关系型则不需要提前声明数据类型。是键值对形式存储。 2、 扩展方式性能上的提升。关系型数据库靠的是提升本机性能。非关系型数据库可以横向扩展加入节点服务器的方式提高性能。 3、 对事务的支持性不同原子性最小单元、隔离性一个事务执行不能被其他事务干扰、一致性前后数据保持一致保证诗句完整性、持久性一旦写入不可更改 非关系型数据库也可以支持事务但是其稳定性和处理能力都不如关系型数据库。 非关系型数据库的主要场景 1、 操作的扩展性 2、 大数据量处理海量数据处理 非关系型数据库产生的原因 web2.0的核心作用交互 纯动态网站的三高问题 1、 对数据库高并发读写的需求 2、 对海量数据高效存储与访问的需求 3、 对数据库的高可扩展性与高可用性的需求 常见的缓存需求场景数据库缓存、web页面缓存、cpu和硬盘之间的缓存 非关系型数据库缓存工作流程图 总结 关系型数据库 库------表-------行列-------存储数据 非关系型数据库 库-------集合----键值对 非关系型数据库不需要手动创建库和集合本身自带 夹在两个应用程序之间就是中间键 什么是redis redis是开源的使用c语言编写的NQL数据库。 redis基于内存运行支持持久化数据恢复。采用key-value(键值对)的存储形式。目前在分布式架构中非常重要的一环。 redis的数据流向和工作流程架构图 redis的工作特点 redis服务器程序是一个单进程模式。即只有一个主进程工作。也就是说可以在一台服务器上启动多个redis。需要注意端口号不能冲突 1、 redis的实际处理速度是完全依靠主进程的执行效率。 2、 服务器只部署了一个redis进程多个客户端访问可能会导致redis的处理能力下降。 3、 如果部署了多个redis进程虽热能提高redis的并发处理能力但是会给服务器cpu带来很大的压力。 工作中一台服务器一般部署3个redis进程。视情况而定一般情况单进程足够了。 redis的特点 1、 具有极高的读写速度数据读取支持每秒11万次。写入数据支持每秒执行8万1千次写入。 2、 可以支持丰富的数据类型。 3、 支持持久化。平常的数据都是保存在内存中。持久化可以写入到磁盘中。既可以保存到本地也可也实现备份。 4、 原子性最小单位。redis所有的操作都是原子性。要么都成功要么都失败 5、 支持主从模式实现数据同步。master-slave模式 redis部署 tar -xf redis #解压redis安装包 make -j4 #编译 make PREFIX/usr/local/redis install #指定安装位置 cd utils ./install_server.sh 默认端口号回车 指定配置文件默认回车 指定日志文件路径默认回车 指定数据文件路径默认回车 指定工作目录/usr/local/redis/bin/redis-server ln -s /usr/local/redis/bin/* /usr/local/bin/ #创建一个软连接 netstat -antp | grep redis #查看一下redis端口是否启动成功redis安装成功 redis进行服务控制命令 redis的服务为控制命令 /etc/init.d/redis_6379 /etc/init.d/redis_6379 stop #停止redis服务/etc/init.d/redis_6379 start #启动redis服务/etc/init.d/redis_6379 restart #重启redis服务/etc/init.d/redis_6379 status #查看redis的状态vim /etc/redis/6379.conf 70行添加本机的ip即可 redis的命令工具 redis-server #可以直接启动redisredis-benchmark #检测redis在本机的运行效率redis-cli #命令行工具redis-check-aof #检测持久化文件AOF文件是否正常redis-check-rbd #检测持久化文件RBD文件是否正常 redis-benchmark的语法检测redis在本机的运行效率 redis-benchmark -h #指定服务器的主机名 ip地址redis-benchmark -p #指定服务器的端口号redis-benchmark -c #指定并发连接数redis-benchmark -n #指定请求数 redis的数据类型 如何进入redis redis-cli -h 本机ip -p 端口号 redis-cli -h 20.0.0.26 -p 6379 #进入redisredis-cli #仅限于本地远程登录还是需要指定目标服务器的ip地址redis-cli -h 20.0.0.26 -p 6379 #-h 指定IP地址 #-p 指定端口号 #-a 指定登录密码 redis五大数据类型 1、 string字符串是redis最基本的类型最大能存储512MB的数据可以存储任何数据 查询键值对和修改键值对名 KEYS * #查看有哪些键set 键名 值 set test zyg #set给键起个名字get 键名 get test #查询键的值set test 10 #可以直接替换键内部的值keys 键名 keys test #模糊查询法keys t* #模糊查询法任意长度生产中尽量别用*keys t #以t开头后面任意1位的键keys t?? #以t开头后面意义2位置的键查询键值对是否存在和删除键指定键 exists 键名 exists test #判断键名是否存在。返回1表示存在返回0表示不存在del 键名 键名 del t1 t22 #删除键可以一次1个也可也一次多个 查询键值对的类型和长度 type 键名 type test #查看键值对的类型append 键名 值 append test1 hello #如果键不存在直接返回键的长度append test1 world #如果键已经存在会拼接起来返回拼接后的总长度strlen 键名 strlen test1 #直接返回键的长度 键值对的自增和自减 set 键名 值 set test1 10 #可以直接覆盖键的值get test1 incr 键名 incr test1 #自增1decr 键名 decr test1 #自减1只能对数字类型进行操作 对指定数值进行增加和减少 set test1 15 decrby 键名 值 decrby test1 10 #对指定数值进行减少incrby 键名 值 incrby test1 20 #对指定数值增加get test1 声明键值对的生命周期 setex 键名 值 lo setex test2 5 lo #新建时声明键值对的声明周期ttl 键名 ttl test2 #查看键值对的生命周期 -2代表键值对已经失效-1表示永不过期expire 键名 时间秒 expire test 30 #对已有键值对修改生命周期 30秒 批量创建键值对 mset 键名1 值 键名2 值 mset key1 hello key2 world #批量设置键keys * #查看键mget 键名1 键名2 mget key1 key2 #同时打印多个键的值 2、 list数据类型列表。但是列表当中的元素还是string类型 创建列表 lpush 键名 值 lpush zyg a b c d 1 2 3 #创建列表 后面时内容但是当中的元素还是string类型lrange 键名 范围 lrange zyg 0 -1 #查看列表中的数据倒叙lindex 键名 索引下标 lindex zyg 0 lindex zyg 4 #根据索引下标打印数据 rpush 键名 值 rpush guoqi1 1 2 3 4 #创建列表正序查看 lrange guoqi1 0 -1 #正序查看 lrange guo1i1 1 2 #指定范围查看 对列表插入值 lpushx 键名 值 lpushx guoqi1 10 #共左插入lrange 键名 范围 lrange guoqi1 0 -1 #通过索引下标范围查看rpushx guoqi1 5 #从右插入lrange guoqi1 0 -1 #通过索引下标范围查看 删除列表内的值 lpop 键名 lpop guoqi1 #从左边开始删lrange guoqi1 0 -1 #范围查看键值对内部的值rpop 键名 rpop guoqi1 #从右边开始删lrange guoqi1 0 -1llen 键名 llen guoqi1 #查询列表内的元素lindex 键名 索引下标 lindex guoqi1 3 #指定索引下标查询lrange guoqi1 0 -1linsert 键名 before 索引下标范围 linsert guoqi1 before 3 10 #在指定位置前插入数据lrange guoqi1 0 -13、 hash类型hash类型用于存储对象采用hash格式进行操作占用磁盘空间少而且一个hash可以存储4294967295个键值对 创建hash类型的数据 hset 键名 字段 值 hset zyg2 tall yes #创建一个hash类型的数据hget 键名 字段 hget zyg2 tall #打印tall的值hset 键名 字段 值 hset zyg2 hangsan yes #添加1个字段hmget 键名 字段 字段 hmget zyg2 tall handsan #批量打印字段hset 键名 字段 值 hset zyg2 age 20 #再添加一个字段hmget 键名 字段 字段 字段 hmget zyg2 tall hangdsan age #一次性打印多个字段 删除一个或多个 hdel 键名 字段 hdel zyg2 hangsan #删除单个字段hdel 键名 字段 字段 hdel zyg2 tall age #删除多个字段hmget 键名 字段 字段 字段 hmget zyg2 tall hangsan age #差选多个字段 一次性创建多个值 hmset 键名 字段 值 字段 值 字段 值 字段 值 hmset zyg3 tall 1 rich 2 age 23 fcz 500 #一次性创建多个字段hmget 键名 字段 字段 字段 字段 hmget zyg3 tall rich age fcz #一次性打印多个名称和值 直接查看键值对的所有字段和值 hgetall 键名 hgetall zyg3 #查看键的字段和值hkeys 键名 hkeys zyg3 #当前键值对的字段名hvals 键名 hvals zyg3 #当前键值对的值 删除键值对 del zyg3 #删除键值对 4、 set数据类型无序集合元素类型也是string。元素是唯一的不允许重复多个集合类型可以进行并集。交集和差集运算。 set当中的元素类型是唯一的可以跟踪一些唯一的数据。访问微博的用户名。访问微博的用户名只要把对饮名称redisset集合可以自动保存唯一性方便下一次的访问 创建集合 flushall #清除所有库的所有内容sadd 集合名 值 sadd myset a a c #创建无序集合myset并创建成员smembers 集合名 SMEMBERS myset #查看成员信息合集中不能插入重复数据 查看合集中值是否存在 sismember 键名 值 sismember myset c #查看合集中数据是否存在1表示存在0表示不存在 随机返回和移除 srandmember 集合名 SRANDMEMBER myset #随机返回一个值spop 集合名 spop myset #随机移除一个值srem 集合名 值 srem myset a e f #指定值删除smembers 集合名 SMEMBERS myset #查看合集的内容 5、 有序集合有序集合元素类型也是string元素唯一不能重复。 每个元素都会关联一个double小数点的分数score表示权重通过权重大小。进行排序。元素的权重可以相同。 zset运用在在线积分的排行榜可以实时跟新用户的分数和排名。 zrange命令返回积分top10的用户。zrank命令通过username来获取用户的排行信息。 通过权重来排列 创建有序集合 zadd 集合名 权重 元素 zadd myzset 1 one #创建有序集合myzset 权重是1 元素是onezadd 集合名 权重 元素 权重 元素 zadd myzset 2 two 3 three #创建多个元素zrange 集合名 索引下标范围 WITHSCORES zrange myzset 0 -1 WITHSCORES #打印所有元素 #不加WITHSCORES是只显示元素 #加WITHSCORES是权重和元素都显示 获取集合中的位置索引 zrank 集合名 元素 zrank myzset one #查看位置索引zrank 集合名 元素 zrank myzset fore #如果成员不存在返回nilzcard 集合名 zcard myzset #查询成员数量zcont 集合名 权重范围 zcount myzset 1 2 #表示查询权重的范围 #查询权重1-2的范围之内的成员数量表示权重范围1score3 如何删除成员和查看权重 zrem 集合名 元素 zrem myzset three #删除成员zrange 集合名 索引下标范围 withscores zrange myzset 0 -1 withscores #查看所有成员查看删除后的结果zscore 集合名 元素 zscore myzset two #查看权重 如何对已有key进行重命名 set和hset创建普通类型和hash类型一般情况下如无特殊需求普通的创建方式即可对一个键进行多字段存储节省内存使用hash方式。一般工作中set足够 set test 10 get testrename 键名 新键名 rename test zygg #对键重命名 查询redis库 redis的库都是创建好的有16个库 数字排名0-15 每个数据库之间互相独立互不干扰 dbsize #查看当前库中键的数量keys *select 库的序号 select 1 #切换库keys *redis库是按照数字排列的0-15 一共16个 初始位置默认是0库 移动键到其他库 move 键名 库的序号 move guoqi1 1 #把键移动到其他的库中 创建密码 config set requirepass 密码 config set requirepass 123456 #创建redis的密码 可以进入redis的库但是看不到库auth 123456 #在内声明密码redis-cli -h 20.0.0.26 -p 6379 -a 123456 #在外声明密码 #-h指定ip地址 #-p指定端口 #-a指定密码 如何清空当前库和所有库 flushdb #清空当前库 flushall #清空所有库不建议使用了解即可 总结 redis的特点读写速度快 数据类型 1、 string包含所有不只是字符串 2、 list 3、 hash 对一个键进行多字段操作要用hash 节省内存空间。只要没有持久化之前都是保存在内存当中的。 4、 无序集合 set 元素不能重复可以用来定义唯一值 5、 有序集合zset 元素不能重复但是权重可以相同。可以用来排名 补充 redis快的原因是什么 1、 redis是纯内存结构。避免了磁盘I/O的耗时 2、 redis只有一个主进程没有其他的限制。核心模块是一个单进程减少了线程切换和回收线程资源的事件。 3、 实现I/O的多路复用机制。每一个执行线路都可以同时执行读和写。高并发的效率大大提高。 特殊说明redis的读写仍然是单进程处理
http://www.zqtcl.cn/news/232523/

相关文章:

  • 宠物网站建设的目的wordpress图创
  • 网站首页图片怎么更换浙江省建设政务网站
  • 宁波有哪家公司做网站的京东联盟网站建设电脑版
  • 电商网站业务流程网站制作在哪找
  • 学校网站建设教程加盟网站制作费用
  • fqapps网站建设少儿戏曲知识 网站建设
  • 产品网站建设框架wordpress用户名密码加密方式
  • 入侵dedecms网站管理员密码青岛seo整站优化公司
  • 小网站备案南宁网站建设排名
  • 西安免费做网站wordpress 使用方法
  • 企业营销的意义优化核心系列网站
  • 微信网站设计一起做网站17广州
  • 重庆网络推广网站如何制作app演示视频
  • 网站logo是指手机上做app的软件
  • 做母婴育儿类网站好做seo排名吗深圳网站. 方维网络
  • 小型装修公司店面装修windows优化大师会员
  • php服装商城网站建设wordpress主题去除友情链接
  • 北京网站设计公司sx成都柚米科技15福建众利建设工程网站
  • 深圳大型网站建设服务公司wordpress后台为什么这么慢
  • 信用网站建设工作简报青岛的建筑公司
  • 网站怎么做文件上传灯饰 东莞网站建设
  • 建设电子商务网站的规划书电子商务平台网站模板
  • 桂林网站建设 腾云安康养老院收费
  • 网站建设找酷风旅游手机网站开发
  • 宜昌建设厅网站开发公司起名大全
  • 龙口建设局网站深圳十大网站建设公司
  • 湛江网站设计哪家好公司网址怎么查询
  • 网站怎么设置关键词河南宣传片制作公司
  • 做网站 怎么赚钱吗安乡网站制作
  • 国外展览展示设计网站沧州网络推广管理公司