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

简单制作网站的过程网站优化方案设计

简单制作网站的过程,网站优化方案设计,wordpress不自动安装插件,网络营销运营培训班1 Redis配置概述 Redis支持采用其内置默认配置的方式来进行启动#xff0c;而不需要提前配置任何文件#xff0c;但是这种启动方式只推荐在测试和开发环境中使用#xff0c;但更好的方式是通过提供一个Redis的配置文件来对Redis进行配置#xff0c; 这个配置文件一般命名为… 1 Redis配置概述 Redis支持采用其内置默认配置的方式来进行启动而不需要提前配置任何文件但是这种启动方式只推荐在测试和开发环境中使用但更好的方式是通过提供一个Redis的配置文件来对Redis进行配置 这个配置文件一般命名为’redis.conf’。 1.1 Redis配置文件 Redis的配置文件用于配置 Redis 实例的各种参数和选项。Redis 实例启动时会读取该配置文件并按照文件中的配置参数进行初始化。 Redis 的配置文件包含了众多的选项涵盖了各个方面包括但不限于 通用设置如是否以守护进程方式运行 Redis、监听的端口号、监听的地址等。连接设置如客户端连接超时时间、是否开启 TCP keepalive 等。通信协议设置如 TCP listen() 函数的等待队列长度、Unix 套接字文件路径等。通用配置项如日志记录级别、日志文件路径、Redis 数据库数量等。快照配置项如触发快照保存的条件、快照保存出错时是否停止写入操作等。AOF 配置项如是否开启 AOF 持久化、AOF 持久化的同步方式等。主从复制配置项如从节点是否只读、主从节点之间的心跳超时时间等。Sentinel 配置项如是否允许 Sentinel 脚本重新配置 Redis、监控的主节点名称、IP 地址、端口号、quorum 等。 通过修改 Redis 的配置文件可以调整 Redis 的行为和性能以更好地满足不同的业务需求。需要注意的是修改配置文件后需要重启 Redis 实例才能使新的配置生效。有的配置可以通过redis命令及时生效但是配置只存放与当前实例的内存中重启后丢失。如果要持久化配置必须修改配置文件。 ‘redis.conf’ 文件中包含一系列格式非常简单的配置项如下所示 keyword argument1 argument2 ... argumentN 简单配置示例 slaveof 127.0.0.1 6380 如果说配置参数值中包含空格则需要为其添加双引号如下所示 requirepass hello world 所有这些配置项的列表以及它们的意思和用法都可以参考Redis发行版中的redis.conf自说明示例文档。 自说明文档 Redis 2.8中的redis.conf。自说明文档 Redis 2.6中的redis.conf。自说明文档 Redis 2.4中的redis.conf。 1.2 通过命令行传递参数 自Redis 2.6 开始Redis就可以支持通过命令行来传递配置参数。这个功能对测试来说非常有用。 下面这个是例子是使用6380端口来启动一个新的Redis实例并且从实例在127.0.0.1的6379端口运行。 ./redis-server --port 6380 --slaveof 127.0.0.1 6379 命令行传递参数的格式和在redis.conf文件中配置参数的格式是一样的 唯一的不同之处是在命令行参数关键字前需要添加’–‘前缀。 注意采用这种方式其内部会在内存中生成一个临时的配置文件可能会把用户传递的任意配置项都添加到配置文件里传递的参数会转换成redis.conf文件的格式。 1.3 运行时改变Redis配置 Redis支持在运行时通过使用命令CONFIG SET 和 CONFIG GET 来对配置项进行重新配置以及通过编程来查询Redis当前的配置项设置和查询不需要停止和重启服务。并不是所有的配置项都支持这种配置方式但是大部分是支持的。具体的支持情况请参考 CONFIG SET 和 CONFIG GET 注意运行时动态修改的配置项 不会影响redis.conf文件中的配置在下一次重启时又会恢复以前的配置。 如果通过CONFIG SET修改了某些配置项还确定要同时修改’redis.conf’配置文件中相对应的配置项。则需要你自己手动去修改或者使用Redis 2.8。在Redis2.8 中你只要使用CONFIG REWRITE 来重写参数项将自动去扫描你的’redis.conf’文件如果发现配置的值和你要修改的值不匹配的话则会将配置的值更新为新设置的值。如果对应的配置项不存在则会设置为默认值而不是新添加的。配置文件中的注释将会被保留。 1.4 将Redis配置为缓存 如果你计划将Redis当作一个缓存来使用而且每一个key都需要有一个过期设置你可以考虑使用如下的配置示例中假设最大内存限制为2M maxmemory 2mb maxmemory-policy allkeys-lru 在这个配置中应用程序不需要再使用 ‘EXPIRE’ 命令或者相同的命令为每一个存活的key设置一个过期时间因为所有的key在都将在达到2M内存限制时使用近似LRU算法对其进行淘汰。 2 Redis 配置说明 2.1 通用设置 daemonize no # 是否以守护进程方式运行 RedisRedis默认不是以守护进程的方式运行可以通过该配置项修改使用yes启用守护进程pidfile /var/run/redis_6379.pid # Redis 进程 ID 文件路径当Redis以守护进程方式运行时Redis默认会把pid写入/var/run/redis.pid文件可以通过pidfile指定        port 6379 # 指定Redis 监听的端口号默认端口为6379作者在自己的一篇博文中解释了为什么选用6379作为默认端口因为6379在手机按键上MERZ对应的号码而MERZ取自意大利歌女Alessia Merz的名字bind 127.0.0.1 # Redis 监听的地址默认为本地回环地址requirepass foobared # 设置Redis连接密码如果配置了连接密码客户端在连接Redis时需要通过AUTH 命令提供密码默认关闭maxmemory  # 指定Redis最大内存限制Redis在启动时会把数据加载到内存中达到最大内存后Redis会先尝试清除已到期或即将到期的Key当此方法处理 后仍然到达最大内存设置将无法再进行写入操作但仍然可以进行读取操作。Redis新的vm机制会把Key存放内存Value会存放在swap区 2.2 连接设置 timeout 0 # Redis 客户端连接超时时间当客户端闲置多长时间后关闭连接如果指定为0表示关闭该功能tcp-keepalive 0 # 是否开启 TCP keepalivemaxclients 128 # 设置同一时间最大客户端连接数默认无限制Redis可以同时打开的客户端连接数为Redis进程可以打开的最大文件描述符数如果设置 maxclients 0表示不作限制。当客户端连接数到达限制时Redis会关闭新的连接并向客户端返回max number of clients reached错误信息 2.3 通信协议设置 tcp-backlog 511 # TCP listen() 函数的等待队列长度tcp-keepalive 300 # TCP keepalive 时间间隔单位为秒unixsocket /var/run/redis/redis.sock # Unix 套接字文件路径unixsocketperm 700 # Unix 套接字文件的权限glueoutputbuf yes # 设置在向客户端应答时是否把较小的包合并为一个包发送默认为开启hash-max-zipmap-entries 64 # 指定在超过一定的数量时采用一种特殊的哈希算法hash-max-zipmap-value 512 # 指定在最大的元素超过某一临界值时采用一种特殊的哈希算法activerehashing yes # 指定是否激活重置哈希默认为开启后面在介绍Redis的哈希算法时具体介绍include /path/to/local.conf # 指定包含其它的配置文件可以在同一主机上多个Redis实例之间使用同一份配置文件而同时各个实例又拥有自己的特定配置文件 2.4 日志配置项 loglevel notice # 日志记录级别指定日志记录级别Redis总共支持四个级别debug、verbose、notice、warning默认为verboselogfile /var/log/redis/redis.log # 日志文件路径syslog-enabled no # 是否将日志输出到系统日志syslog-ident redis # 系统日志标识符syslog-facility local0 # 系统日志设施databases 16 # Redis 数据库数量默认数据库为0可以使用SELECT 命令在连接上指定数据库id 2.5 快照配置项 save   #指定在多长时间内有多少次更新操作就将数据同步到数据文件可以多个条件配合 Redis默认配置文件中提供了三个条件 save 900 1            save 300 10            save 60 10000 分别表示900秒15分钟内有1个更改300秒5分钟内有10个更改以及60秒内有10000个更改。 stop-writes-on-bgsave-error yes # 快照保存出错时是否停止写入操作rdbcompression yes # 是否开启 RDB 文件压缩指定存储至本地数据库时是否压缩数据默认为yesRedis采用LZF压缩如果为了节省CPU时间可以关闭该选项但会导致数据库文件变的巨大rdbchecksum yes # 是否开启 RDB 文件校验dbfilename dump.rdb # RDB 文件名指定本地数据库文件名默认值为dump.rdbdir ./ # 指定本地数据库存放目录 2.6 AOF 配置项 appendonly no # 是否开启 AOF 持久化指定是否在每次更新操作后进行日志记录Redis在默认情况下是异步的把数据写入磁盘如果不开启可能会在断电时导致一段时间内的数据丢失。因为 redis本身同步数据文件是按上面save条件来同步的所以有的数据会在一段时间内只存在于内存中。默认为noappendfilename appendonly.aof # AOF 持久化文件名指定更新日志文件名默认为appendonly.aofappendfsync everysec # AOF 持久化的同步方式指定更新日志条件共有3个可选值      no表示等操作系统进行数据缓存同步到磁盘快     always表示每次更新操作后手动调用fsync()将数据写到磁盘慢安全     everysec表示每秒同步一次折衷默认值no-appendfsync-on-rewrite no # 是否在 AOF 重写时禁止同步auto-aof-rewrite-percentage 100 # 触发 AOF 重写的条件AOF 文件大小增长率达到 100%auto-aof-rewrite-min-size 64mb # 触发 AOF 重写的条件AOF 文件最小大小aof-load-truncated yes # 是否在 AOF 文件被截断时继续加载剩余内容 2.7 主从复制配置项 slave-serve-stale-data yes # 从节点是否在主节点不可用时仍然向客户端提供服务slave-read-only yes # 从节点是否只读repl-diskless-sync no # 是否在复制时避免使用磁盘repl-diskless-sync-delay 5 # 复制时磁盘同步延迟时间单位为秒repl-ping-slave-period 10 # 主节点发送 ping 命令的时间间隔单位为秒repl-timeout 60 # 主从节点之间的心跳超时时间单位为秒repl-disable-tcp-nodelay no # 是否禁用 TCP_NODELAY 算法slave-priority 100 # 从节点优先级slaveof   #设置当本机为slav服务时设置master服务的IP地址及端口在Redis启动时它会自动从master进行数据同步masterauth  # 当master服务设置了密码保护时slav服务连接master的密码 2.8 Sentinel 配置项 sentinel deny-scripts-reconfig yes # 是否允许 Sentinel 脚本重新配置 Redissentinel monitor mymaster 127.0.0.1 6379 2 # 监控的主节点名称、IP 地址、端口号、quorumsentinel down-after-milliseconds mymaster 30000 # 主节点失效判定时间单位为毫秒 2.9 虚拟内存配置项 vm-enabled no # 指定是否启用虚拟内存机制默认值为no简单的介绍一下VM机制将数据分页存放由Redis将访问量较少的页即冷数据swap到磁盘上访问多的页面由磁盘自动换出到内存中在后面的文章我会仔细分析Redis的VM机制vm-swap-file /tmp/redis.swap # 虚拟内存文件路径默认值为/tmp/redis.swap不可多个Redis实例共享vm-max-memory 0 # 将所有大于vm-max-memory的数据存入虚拟内存,无论vm-max-memory设置多小,所有索引数据都是内存存储的(Redis的索引数据 就是keys),也就是说,当vm-max-memory设置为0的时候,其实是所有value都存在于磁盘。默认值为0vm-page-size 32 # Redis swap文件分成了很多的page一个对象可以保存在多个page上面但一个page上不能被多个对象共享vm-page-size是要根据存储的 数据大小来设定的作者建议如果存储很多小对象page大小最好设置为32或者64bytes如果存储很大大对象则可以使用更大的page如果不 确定就使用默认值vm-pages 134217728 # 设置swap文件中的page数量由于页表一种表示页面空闲或使用的bitmap是在放在内存中的在磁盘上每8个pages将消耗1byte的内存。vm-max-threads 4 # 设置访问swap文件的线程数,最好不要超过机器的核数,如果设置为0,那么所有对swap文件的操作都是串行的可能会造成比较长时间的延迟。默认值为4 2.10 附加配置 always-show-logo #是否在命令行启动时显示 Redis Logo默认为 yes。可以将该选项设置为 no以屏蔽 Redis Logo 的显示。hz # 控制 Redis 在每秒钟运行的循环次数。默认为 10表示每秒钟运行 10 次循环。可以将该选项设置为一个正整数以控制 Redis 运行的速度。include # 允许在配置文件中包含其他文件默认为 表示不包含其他文件。可以将该选项设置为实际文件名以包含其他文件的配置项。lua-time-limit # 控制 Lua 脚本的执行时间限制默认为 5000 毫秒。可以将该选项设置为一个正整数以控制 Lua 脚本的最长执行时间。repl-backlog-size # 控制 Redis 复制功能的回放缓冲区大小默认为 1MB。可以将该选项设置为一个正整数以控制回放缓冲区的大小。repl-diskless-sync # 是否在复制时避免使用磁盘即将数据直接从主节点传输到从节点的内存中默认为 no。可以将该选项设置为 yes以避免磁盘的使用。repl-ping-slave-period # 控制主节点发送 ping 命令的时间间隔默认为 10 秒。可以将该选项设置为一个正整数以控制 ping 命令的发送间隔。repl-timeout # 控制主从节点之间的心跳超时时间默认为 60 秒。可以将该选项设置为一个正整数以控制心跳超时时间。maxmemory-policy # Redis 内存达到最大限制后的淘汰策略默认为 noeviction表示停止写入操作。其他可选策略包括 volatile-lru、volatile-ttl、volatile-random、allkeys-lru、allkeys-random 等。client-output-buffer-limit # 控制客户端输出缓冲区的大小默认为 client-output-buffer-limit normal 0 0 0表示不限制缓冲区大小。可以将该选项设置为实际缓冲区大小以避免客户端输出缓冲区溢出。notify-keyspace-events # 开启键空间通知功能默认为 表示关闭键空间通知功能。可以将该选项设置为 KEA、KgE、lsh、E、gxE 等表示监听不同类型的键空间事件。 注意这些配置项很多是比较高级的配置项只有在深度理解 Redis 运行机制和需要特定的功能时才需要使用。如果您不确定如何使用这些配置项建议参考 Redis 的官方文档或向 Redis 社区寻求帮助。 2.11 redis.conf示例 # Redis 配置文件示例# 通用设置 daemonize no # 是否以守护进程方式运行 RedisRedis默认不是以守护进程的方式运行可以通过该配置项修改使用yes启用守护进程 pidfile /var/run/redis_6379.pid # Redis 进程 ID 文件路径 port 6379 # Redis 监听的端口号 bind 127.0.0.1 # Redis 监听的地址默认为本地回环地址# 连接设置 timeout 0 # Redis 客户端连接超时时间 tcp-keepalive 0 # 是否开启 TCP keepalive# 通信协议设置 tcp-backlog 511 # TCP listen() 函数的等待队列长度 tcp-keepalive 300 # TCP keepalive 时间间隔单位为秒 unixsocket /var/run/redis/redis.sock # Unix 套接字文件路径 unixsocketperm 700 # Unix 套接字文件的权限# 通用配置项 loglevel notice # 日志记录级别 logfile /var/log/redis/redis.log # 日志文件路径 syslog-enabled no # 是否将日志输出到系统日志 syslog-ident redis # 系统日志标识符 syslog-facility local0 # 系统日志设施 databases 16 # Redis 数据库数量# 快照配置项 save 900 1 # 触发快照保存的条件900 秒内至少有一个键被修改 save 300 10 # 触发快照保存的条件300 秒内至少有 10 个键被修改 save 60 10000 # 触发快照保存的条件60 秒内至少有 10000 个键被修改 stop-writes-on-bgsave-error yes # 快照保存出错时是否停止写入操作 rdbcompression yes # 是否开启 RDB 文件压缩 rdbchecksum yes # 是否开启 RDB 文件校验 dbfilename dump.rdb # RDB 文件名# AOF 配置项 appendonly no # 是否开启 AOF 持久化 appendfilename appendonly.aof # AOF 持久化文件名 appendfsync everysec # AOF 持久化的同步方式 no-appendfsync-on-rewrite no # 是否在 AOF 重写时禁止同步 auto-aof-rewrite-percentage 100 # 触发 AOF 重写的条件AOF 文件大小增长率达到 100% auto-aof-rewrite-min-size 64mb # 触发 AOF 重写的条件AOF 文件最小大小 aof-load-truncated yes # 是否在 AOF 文件被截断时继续加载剩余内容# 主从复制配置项 slave-serve-stale-data yes # 从节点是否在主节点不可用时仍然向客户端提供服务 slave-read-only yes # 从节点是否只读 repl-diskless-sync no # 是否在复制时避免使用磁盘 repl-diskless-sync-delay 5 # 复制时磁盘同步延迟时间单位为秒 repl-ping-slave-period 10 # 主节点发送 ping 命令的时间间隔单位为秒 repl-timeout 60 # 主从节点之间的心跳超时时间单位为秒 repl-disable-tcp-nodelay no # 是否禁用 TCP_NODELAY 算法 slave-priority 100 # 从节点优先级# Sentinel 配置项 sentinel deny-scripts-reconfig yes # 是否允许 Sentinel 脚本重新配置 Redis sentinel monitor mymaster 127.0.0.1 6379 2 # 监控的主节点名称、IP 地址、端口号、quorum sentinel down-after-milliseconds mymaster 30000 # 主节点失效判定时间单位为毫秒 sentinel failover-timeout mymaster 180000 3 通过CONFIG 命令操作配置项 Redis 的配置文件位于 Redis 安装目录下文件名为 redis.conf。 你可以通过 CONFIG 命令查看或设置配置项。 3.1 查看配置 3.1.1 语法 Redis CONFIG 命令格式如下 redis 127.0.0.1:6379 CONFIG GET CONFIG_SETTING_NAME 3.1.2 实例 redis 127.0.0.1:6379 CONFIG GET loglevel 1) loglevel2) notice 使用 * 号获取所有配置项 3.1.3 实例 redis 127.0.0.1:6379 CONFIG GET *1) dbfilename2) dump.rdb3) requirepass4) 5) masterauth6) 7) unixsocket8) 9) logfile10) 11) pidfile12) /var/run/redis.pid 13) maxmemory 14) 0 15) maxmemory-samples 16) 3 17) timeout 18) 0 19) tcp-keepalive 20) 0 21) auto-aof-rewrite-percentage 22) 100 23) auto-aof-rewrite-min-size 24) 67108864 25) hash-max-ziplist-entries 26) 512 27) hash-max-ziplist-value 28) 64 29) list-max-ziplist-entries 30) 512 31) list-max-ziplist-value 32) 64 33) set-max-intset-entries 34) 512 35) zset-max-ziplist-entries 36) 128 37) zset-max-ziplist-value 38) 64 39) hll-sparse-max-bytes 40) 3000 41) lua-time-limit 42) 5000 43) slowlog-log-slower-than 44) 10000 45) latency-monitor-threshold 46) 0 47) slowlog-max-len 48) 128 49) port 50) 6379 51) tcp-backlog 52) 511 53) databases 54) 16 55) repl-ping-slave-period 56) 10 57) repl-timeout 58) 60 59) repl-backlog-size 60) 1048576 61) repl-backlog-ttl 62) 3600 63) maxclients 64) 4064 65) watchdog-period 66) 0 67) slave-priority 68) 100 69) min-slaves-to-write 70) 0 71) min-slaves-max-lag 72) 10 73) hz 74) 10 75) no-appendfsync-on-rewrite 76) no 77) slave-serve-stale-data 78) yes 79) slave-read-only 80) yes 81) stop-writes-on-bgsave-error 82) yes 83) daemonize 84) no 85) rdbcompression 86) yes 87) rdbchecksum 88) yes 89) activerehashing 90) yes 91) repl-disable-tcp-nodelay 92) no 93) aof-rewrite-incremental-fsync 94) yes 95) appendonly 96) no 97) dir 98) /home/deepak/Downloads/redis-2.8.13/src 99) maxmemory-policy100) volatile-lru101) appendfsync102) everysec103) save104) 3600 1 300 100 60 10000105) loglevel106) notice107) client-output-buffer-limit108) normal 0 0 0 slave 268435456 67108864 60 pubsub 33554432 8388608 60109) unixsocketperm110) 0111) slaveof112) 113) notify-keyspace-events114) 115) bind116) 3.2 编辑配置 你可以通过修改 redis.conf 文件或使用 CONFIG set 命令来修改配置。 3.2.1 语法 CONFIG SET 命令基本语法 redis 127.0.0.1:6379 CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE 3.2.2 实例 redis 127.0.0.1:6379 CONFIG SET loglevel noticeOK redis 127.0.0.1:6379 CONFIG GET loglevel 1) loglevel2) notice 4 Redis配置注意事项 在对 Redis 进行配置时有一些注意事项需要注意包括但不限于以下几点 4.1. 合理设置内存限制 Redis 是一种基于内存的数据存储系统需要合理设置 Redis 实例的内存限制。如果设置过高可能会导致 Redis 运行缓慢或崩溃如果设置过低则可能会影响 Redis 的性能。 4.2. 合理设置快照和 AOF 配置项 快照和 AOF 是 Redis 的两种持久化方式可以保证数据在 Redis 重启或崩溃时不会丢失。在设置快照和 AOF 配置项时需要根据实际需求进行选择和配置。如果不需要持久化数据可以将这两个配置项都关闭。 4.3 设置合理的最大连接数 在Redis 的配置文件中可以设置最大连接数。如果设置过低可能会导致 Redis 无法处理大量的客户端请求如果设置过高可能会导致 Redis 消耗过多的内存和 CPU 资源。 4.4. 安全设置 要确保 Redis 实例的安全需要设置密码、限制访问地址、限制命令等。尤其是 Redis 实例的密码设置需要保证密码的强度和复杂度以免被破解和攻击。 4.5. 定期备份 虽然 Redis 有持久化机制可以保证数据不丢失但在特殊情况下如硬件故障或人为误操作等也可能会导致数据丢失。因此建议定期备份 Redis 数据以便在出现问题时能够快速恢复数据。 4.6. 监控和调优 Redis 的性能和稳定性与实例的配置和运行状态密切相关。因此在运行 Redis 实例时需要定期监控 Redis 的运行状态、性能指标和日志信息并进行必要的调优和优化以确保 Redis 实例的高可用和高性能。 参考链接 Redis 配置_redis教程 Redis 从入门到精通之Redis配置说明_流沙的牵挂的博客-CSDN博客 Redis配置详解_木西爷的博客-CSDN博客 一文读懂Redis配置史上真香配置 - 知乎 Redis配置详解  Redis配置项汇总超级详细 《Redis官方教程》-Redis的配置 | 并发编程网 – ifeve.com
http://www.dnsts.com.cn/news/136057.html

相关文章:

  • 网站备案帐号查询seo
  • 石景山网站seo优化排名网站建设必要性
  • 网站没备案可以使用了吗wordpress备案信息代码
  • 上海网站专业制作启迪网站建设
  • 公司网站建设调研国内网站开发语言
  • 旧网站如何优化石家庄新闻综合频道
  • 网站建设的客户都在哪里做电商网站是什么
  • 福建省建设职业管理中心网站网站制作公司 佛山
  • 苏州建网站的公司一站式服务洛可可设计公司logo
  • 网站推广软件免费观看wordpress电影站群
  • 网约车平台app网站建设禁止 外链 wordpress
  • 广西网站建设的公司宁波seo推广优化公司
  • 潍坊做网站软件全网品牌推广
  • 做网站备案需要哪些材料国内网站推广
  • 网站建设上线多久国家林业工程建设协会网站
  • 网站正在建设中页面的英文济南百度推广公司电话
  • 上合建设网站企业培训机构招生方案
  • 工信部备案网站查丹东网站优化
  • 水果 网站源码网站搭建工作室加盟
  • 网站点击换图片的效果怎么做英雄传奇网页版登录
  • 武进附近做网站的公司有哪些国内建网站流程
  • 有哪些做任务的网站平台做网站 多少人
  • 优购物官方网站 商城苏州网络推广公司永阳
  • 做的网站在百度找不到了潍坊建设gc局网站
  • 网站上做商城可用同一域名好的公司网站建设
  • 组工网站档案数字化建设网站设计优点
  • 网站后台用户名不存在wordpress开启子目录多站点模式
  • 热门推广平台sem和seo哪个工作好
  • 呼伦贝尔市建设网站广州网站建设与实验
  • 网站底部加备案号如何用dede做带下单的网站