# Redis 入门到精通(八)-- 服务器配置-redis.conf配置与高级数据类型

Redis 入门到精通(八)-- 服务器配置-redis.conf配置与高级数据类型

一、redis 服务器配置–redis.conf 配置

1、服务器端设定

1)设置服务器以守护进程的方式运行: daemonize yes|no
2)绑定主机地址: bind 127.0.0.1
3)设置服务器端口号: port 6379
4)设置数据库数量: databases 16

2、redis 实际操作演示–redis.conf 配置(redis-server)


# 切换到 redis 安装目录 (redis-server)
cd /usr/local/redis/redis-4.0.0/# 查看 redis 服务是否后台启动成功:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# ps -ef | grep redis-# 杀死 redis 服务进程(如果已经启动 redis 服务,可以先停止服务,如:PID 1742)
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# kill -s 9 1742# 修改 conf/redis-6379.conf 配置文件,添加绑定主机地址: bind 127.0.0.1 相关配置。
vim conf/redis-6379.conf# 保存以下内容即可:
port 6379
daemonize yes
logfile "6379.log"# redis 持久化 -- RDB 相关配置
# data 目录为新建目录(设置存储.rdb文件的路径)
dir /usr/local/redis/redis-4.0.0/data# 设置本地数据库文件名:
dbfilename dump-6379.rdb
# 设置存储至本地数据库时是否压缩数据
rdbcompression yes
# 设置是否进行 RDB 文件格式校验
rdbchecksum yes# save配置(每10秒有2次数据变化就自动保存)
save 10 2# 添加如下配置(AOF存储功能)
# 开启AOF持久化功能
appendonly yes
# AOF写数据策略(每次)
appendfsync always
# 设置文件名
appendfilename appendonly-6379.aof# 绑定主机地址: 
bind 127.0.0.1# 设置数据库数量: 
databases 16# 指定配置文件,启动 redis 服务:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# redis-server conf/redis-6379.conf
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# ps -ef | grep redis-             
root      1742     1  0 22:40 ?        00:00:00 redis-server *:6379
root      1748  1367  0 22:40 pts/2    00:00:00 grep --color=auto redis-

3、redis 实际操作演示–打开另一客户端连接(redis-cli-01)


# 切换到 redis 安装目录 
cd /usr/local/redis/redis-4.0.0/# 指定端口号,启动 redis 客户端:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# redis-cli -p 6379# 采用 info 命令查看 redis 服务信息,
127.0.0.1:6379> info
# Server
redis_version:4.0.0
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:6027d33076b6701c
redis_mode:standalone
os:Linux 5.15.153.1-microsoft-standard-WSL2 x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:7.5.0
process_id:1755
run_id:a9336e66ca7a594260ff5244edca8dddbb5a2785
tcp_port:6379
uptime_in_seconds:246
uptime_in_days:0
hz:10
lru_clock:10124785
executable:/usr/local/redis/redis-4.0.0/redis-server
config_file:/usr/local/redis/redis-4.0.0/conf/redis-6379.conf# Clients
connected_clients:1
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0# Memory
used_memory:827904
used_memory_human:808.50K
used_memory_rss:9654272
used_memory_rss_human:9.21M
used_memory_peak:827904
used_memory_peak_human:808.50K
used_memory_peak_perc:100.16%
used_memory_overhead:815398
used_memory_startup:765624
used_memory_dataset:12506
used_memory_dataset_perc:20.08%
total_system_memory:4047536128
total_system_memory_human:3.77G
used_memory_lua:37888
used_memory_lua_human:37.00K
maxmemory:0
maxmemory_human:0B
maxmemory_policy:noeviction
mem_fragmentation_ratio:11.66
mem_allocator:jemalloc-4.0.3
active_defrag_running:0
lazyfree_pending_objects:0# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1721400583
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
rdb_last_cow_size:225280
aof_enabled:1
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
aof_last_cow_size:0
aof_current_size:1887
aof_base_size:1887
aof_pending_rewrite:0
aof_buffer_length:0
aof_rewrite_buffer_length:0
aof_pending_bio_fsync:0
aof_delayed_fsync:0# Stats
total_connections_received:1
total_commands_processed:1
instantaneous_ops_per_sec:0
total_net_input_bytes:31
total_net_output_bytes:10162
instantaneous_input_kbps:0.00
instantaneous_output_kbps:0.00
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:177
migrate_cached_sockets:0
slave_expires_tracked_keys:0
active_defrag_hits:0
active_defrag_misses:0
active_defrag_key_hits:0
active_defrag_key_misses:0# Replication
role:master
connected_slaves:0
master_replid:3b10b8c9e8f7158f9ba8c0e6866219d472365c9b
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0# CPU
used_cpu_sys:0.10
used_cpu_user:0.05
used_cpu_sys_children:0.00
used_cpu_user_children:0.00# Cluster
cluster_enabled:0# Keyspace
db0:keys=2,expires=0,avg_ttl=0
127.0.0.1:6379> 

4、日志配置

1)设置服务器以指定日志记录级别: loglevel debug|verbose|notice|warning

2)日志记录文件名: logfile 端口号.log

5、注意事项:

日志级别开发期设置为 verbose 即可,生产环境中配置为 notice,简化日志输出量,降低写日志 IO 的频度。

6、客户端配置

1)设置同一时间最大客户端连接数,默认无限制。当客户端连接到达上限,Redis 会关闭新的连接

maxclients 0

2)客户端闲置等待最大时长,达到最大值后关闭连接。如需关闭该功能,设置为 0

timeout 300

7、多服务器快捷配置

  • 导入并加载指定配置文件信息,用于快速创建 redis 公共配置较多的 redis 实例配置文件,便于维护。
include /path/server-端口号.conf

二、redis 高级数据类型–bitmaps 介绍与基本操作

1、Bitmaps 类型的基础操作

1)获取指定 key 对应偏移量上的 bit 值

getbit key offset

2)设置指定 key 对应偏移量上的 bit 值,value 只能是 1 或 0

setbit key offset value

2、redis 实际操作演示–bitmaps 介绍与基本操作


# 切换到 redis 安装目录 (redis-server 服务端)
cd /usr/local/redis/redis-4.0.0/# 查看 redis 服务是否后台启动成功:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# ps -ef | grep redis-# 杀死 redis 服务进程(如果已经启动 redis 服务,可以先停止服务,如:PID 1742)
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# kill -s 9 1742# 指定配置文件,启动 redis 服务:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# redis-server conf/redis-6379.conf
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# ps -ef | grep redis-             
root      1742     1  0 22:40 ?        00:00:00 redis-server *:6379
root      1748  1367  0 22:40 pts/2    00:00:00 grep --color=auto redis-# 打开另一客户端连接(redis-cli-01)# 切换到 redis 安装目录(redis-cli-01) 
cd /usr/local/redis/redis-4.0.0/# 指定端口号,启动 redis 客户端:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# redis-cli -p 6379# bitmaps 高级数据类型操作
127.0.0.1:6379> setbit bits 0 1
(integer) 0
127.0.0.1:6379> getbit bits 0
(integer) 1
127.0.0.1:6379> getbit bits 10
(integer) 0
127.0.0.1:6379> setbit bits 100000000 1
(integer) 0
(1.21s)

三、redis 高级数据类型–bitmaps扩展操作

1、Bitmaps 类型的扩展操作

1)业务场景:电影网站

  • 统计每天某一部电影是否被点播
  • 统计每天有多少部电影被点播
  • 统计每周/月/年有多少部电影被点播
  • 统计年度哪部电影没有被点播

2)业务分析:

58-Bitmaps类型的扩展操作.png

2、Bitmaps 类型的扩展操作

1)对指定 key 按位进行交、并、非、异或操作,并将结果保存到 destKey 中

bitop op destKey key1 [key2...]and : 交 
or 	: 并 
not : 非 
xor : 异或 

2)统计指定 key 中 1 的数量

bitcount key [start end]

3、redis 实际操作演示–bitmaps 扩展操作


# 切换到 redis 安装目录 (redis-server 服务端)
cd /usr/local/redis/redis-4.0.0/# 查看 redis 服务是否后台启动成功:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# ps -ef | grep redis-# 杀死 redis 服务进程(如果已经启动 redis 服务,可以先停止服务,如:PID 1742)
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# kill -s 9 1742# 指定配置文件,启动 redis 服务:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# redis-server conf/redis-6379.conf
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# ps -ef | grep redis-             
root      1742     1  0 22:40 ?        00:00:00 redis-server *:6379
root      1748  1367  0 22:40 pts/2    00:00:00 grep --color=auto redis-# 打开另一客户端连接(redis-cli-01)# 切换到 redis 安装目录(redis-cli-01) 
cd /usr/local/redis/redis-4.0.0/# 指定端口号,启动 redis 客户端:
root@WIN-20240529BJA:/usr/local/redis/redis-4.0.0# redis-cli -p 6379# bitmaps 高级数据类型操作# 清空数据
127.0.0.1:6379> flushall
OK# 设置 6 个值
127.0.0.1:6379> setbit 20880808 0 1
(integer) 0
127.0.0.1:6379> setbit 20880808 4 1
(integer) 0
127.0.0.1:6379> setbit 20880808 8 1
(integer) 0
127.0.0.1:6379> setbit 20880808 0 1
(integer) 1
127.0.0.1:6379> setbit 20880809 0 1
(integer) 0
127.0.0.1:6379> setbit 20880809 5 1
(integer) 0
127.0.0.1:6379> setbit 20880809 8 1# 统计数量
127.0.0.1:6379> bitcount 20880808
(integer) 3
127.0.0.1:6379> bitcount 20880809
(integer) 3
127.0.0.1:6379> setbit 20880808 6 1
(integer) 0
127.0.0.1:6379> bitcount 20880808
(integer) 4# 合并数据
127.0.0.1:6379> bitop or 08-09 20880808 20880809
(integer) 2# 统计合并后的数据个数
127.0.0.1:6379> bitcount 08-09
(integer) 5

4、redis 应用 场景:

1)redis 用于控制数据库表主键 id,为数据库表主键提供生成策略,保障数据库表的主键唯一性此方案适用于所有数据库,且支持数据库集群。

2)redis 控制数据的生命周期,通过数据是否失效控制业务行为,适用于所有具有时效性限定控制的操作。

3)redis 可应用于各种结构型和非结构型高热度数据访问加速。

4)redis 应用于购物车数据存储设计。

5)redis 应用于抢购,限购类、限量发放优惠卷、激活码等业务的数据存储设计。

6)redis 应用于具有操作先后顺序的数据控制。

7)redis 应用于最新消息展示。

8)redis 应用于随机推荐类信息检索,例如热点歌单推荐,热点新闻推荐,热卖旅游线路,应用APP推荐大V推荐等。

9)set 类型数据的扩展操作:

  • redis 应用于同类信息的关联搜索,二度关联搜索,深度关联搜索。
  • 显示共同关注(一度)。
  • 显示共同好友(一度)。
  • 由用户A出发,获取到好友用户B的好友信息列表(一度)。
  • 由用户A出发,获取到好友用户B的购物清单列表(二度)。
  • 由用户A出发,获取到好友用户B的游戏充值列表(二度)。

10)redis 应用于同类型不重复数据的合并操作。

11)redis 应用于同类型数据的快速去重。

12)redis 应用于基于黑名单与白名单设定的服务控制。

13)redis 应用于计数器组合排序功能对应的排名。in

14)redis 应用于定时任务执行顺序管理或任务过期管理。

15)redis 应用于即时任务/消息队列执行管理。

16)redis 应用于限时按次结算的服务控制。

17)redis 应用于基于时间顺序的数据操作,而不关注具体时间。

18)redis 应用基于状态控制的批量任务执行.

19)redis 应用基于分布式锁对应的场景控制。

20) 导入并加载指定配置文件信息,用于快速创建 redis 公共配置较多的 redis 实例配置文件,便于维护。

21)redis 应用于信息状态统计。

四、redis 高级数据类型–HyperLogLog

1、统计独立 UV

1)原始方案:set 存储每个用户的id(字符串)。
2)改进方案:Bitmaps 存储每个用户状态(bit)。
3)全新的方案:Hyperloglog。

2、HyperLogLog 基数统计。

  • 基数是数据集去重后元素个数。
  • HyperLogLog 是用来做基数统计的,运用了 LogLog 的算法。

如:

{1, 3, 5, 7, 5, 7, 8} 基数集: {1, 3, 5 ,7, 8} 	基数:5
{1, 1, 1, 1, 1, 7, 1} 基数集: {1,7} 			基数:2

3、LogLog 算法:

59-LogLog算法.png

4、HyperLogLog 类型的基本操作

1)添加数据: pfadd key element [element …]

2)统计数据: pfcount key [key …]

3)合并数据: pfmerge destkey sourcekey [sourcekey…]

4)示例:

127.0.0.1:6379> flushall
OK
127.0.0.1:6379> pfadd hll 001
(integer) 1
127.0.0.1:6379> pfadd hll 001
(integer) 0
127.0.0.1:6379> pfadd hll 001
(integer) 0
127.0.0.1:6379> pfadd hll 001
(integer) 0
127.0.0.1:6379> pfadd hll 001
(integer) 0
127.0.0.1:6379> pfadd hll 002
(integer) 1
127.0.0.1:6379> pfadd hll 002
(integer) 0
127.0.0.1:6379> pfcount hll
(integer) 2

5、redis 应用 场景:

1)redis 用于控制数据库表主键 id,为数据库表主键提供生成策略,保障数据库表的主键唯一性此方案适用于所有数据库,且支持数据库集群。

2)redis 控制数据的生命周期,通过数据是否失效控制业务行为,适用于所有具有时效性限定控制的操作。

3)redis 可应用于各种结构型和非结构型高热度数据访问加速。

4)redis 应用于购物车数据存储设计。

5)redis 应用于抢购,限购类、限量发放优惠卷、激活码等业务的数据存储设计。

6)redis 应用于具有操作先后顺序的数据控制。

7)redis 应用于最新消息展示。

8)redis 应用于随机推荐类信息检索,例如热点歌单推荐,热点新闻推荐,热卖旅游线路,应用APP推荐大V推荐等。

9)set 类型数据的扩展操作:

  • redis 应用于同类信息的关联搜索,二度关联搜索,深度关联搜索。
  • 显示共同关注(一度)。
  • 显示共同好友(一度)。
  • 由用户A出发,获取到好友用户B的好友信息列表(一度)。
  • 由用户A出发,获取到好友用户B的购物清单列表(二度)。
  • 由用户A出发,获取到好友用户B的游戏充值列表(二度)。

10)redis 应用于同类型不重复数据的合并操作。

11)redis 应用于同类型数据的快速去重。

12)redis 应用于基于黑名单与白名单设定的服务控制。

13)redis 应用于计数器组合排序功能对应的排名。in

14)redis 应用于定时任务执行顺序管理或任务过期管理。

15)redis 应用于即时任务/消息队列执行管理。

16)redis 应用于限时按次结算的服务控制。

17)redis 应用于基于时间顺序的数据操作,而不关注具体时间。

18)redis 应用基于状态控制的批量任务执行.

19)redis 应用基于分布式锁对应的场景控制。

20) 导入并加载指定配置文件信息,用于快速创建 redis 公共配置较多的 redis 实例配置文件,便于维护。

21)redis 应用于信息状态统计。

22)redis 应用于独立信息统计。

6、HyperLogLog 相关说明

  • 用于进行基数统计,不是集合,不保存数据,只记录数量而不是具体数据。
  • 核心是基数估算算法,最终数值存在一定误差。
  • 误差范围:基数估计的结果是一个带有 0.81% 标准错误的近似值。
  • 耗空间极小,每个 hyperloglog key 占用了 12K 的内存用于标记基数。
  • pfadd 命令不是一次性分配12K内存使用,会随着基数的增加内存逐渐增大。
  • Pfmerge 命令合并后占用的存储空间为 12K,无论合并之前数据量多少。

五、redis 高级数据类型–GEO

1、GEO 类型的基本操作

1)添加坐标点:geoadd key longitude latitude member [longitude latitude member …]
2)获取坐标点:geopos key member [member …]
3)计算坐标点距离:geodist key member1 member2 [unit]

2、GEO类型的基本操作

1)添加坐标点:

georadius key longitude latitude radius m|km|ft|mi [withcoord] [withdist] [withhash] [count count]

2)获取坐标点:

georadiusbymember key member radius m|km|ft|mi [withcoord] [withdist] [withhash] [count count]

3)计算经纬度:

geohash key member [member ...]

3、示例:


# 清空数据 
127.0.0.1:6379> flushall
OK# 定义坐标数据
127.0.0.1:6379> geoadd geos 1 1 a
(integer) 1
127.0.0.1:6379> geoadd geos 2 2 b
(integer) 1# 取出 a 点
127.0.0.1:6379> geopos geos a
1) 1) "0.99999994039535522"2) "0.99999945914297683"# 计算 a 坐标到 b 坐标的距离   
127.0.0.1:6379> geodist geos a b
"157270.0561"# 计算 a 坐标到 b 坐标的距离(以‘米’ 为单位)   
127.0.0.1:6379> geodist geos a b m
"157270.0561"# 计算 a 坐标到 b 坐标的距离(以“千米” 为单位) 
127.0.0.1:6379> geodist geos a b km
"157.2701"# 创建坐标点(田字格)
127.0.0.1:6379> geoadd geos 1 1 1,1
(integer) 1
127.0.0.1:6379> geoadd geos 1 2 1,2
(integer) 1
127.0.0.1:6379> geoadd geos 1 3 1,3
(integer) 1
127.0.0.1:6379> geoadd geos 2 1 2,1
(integer) 1
127.0.0.1:6379> geoadd geos 2 2 2,2
(integer) 1
127.0.0.1:6379> geoadd geos 2 3 2,3
(integer) 1
127.0.0.1:6379> geoadd geos 3 1 3,1
(integer) 1
127.0.0.1:6379> geoadd geos 3 2 3,2
(integer) 1
127.0.0.1:6379> geoadd geos 3 3 3,3
(integer) 1
127.0.0.1:6379> geoadd geos 5 5 5,5
(integer) 1# 统计 2,2 这个点周围 180km 范围内的 点
127.0.0.1:6379> georadiusbymember geos 2,2 180 km
1) "1,1"
2) "2,1"
3) "1,2"
4) "2,2"
5) "3,1"
6) "3,2"
7) "1,3"
8) "2,3"
9) "3,3"# 统计 2,2 这个点周围 120km 范围内的 点
127.0.0.1:6379> georadiusbymember geos 2,2 120 km
1) "1,2"
2) "2,2"
3) "2,3"
4) "2,1"
5) "3,2"# 统计 2,2 这个点周围 1800km 范围内的 点
127.0.0.1:6379> georadiusbymember geos 2,2 1800 km1) "1,1"2) "2,1"3) "1,2"4) "2,2"5) "3,1"6) "3,2"7) "1,3"8) "2,3"9) "3,3"
10) "5,5"# 统计 经纬度 1.5 1.5 这个点周围 90km 范围内的 点 
127.0.0.1:6379> georadius geos 1.5 1.5 90 km
1) "1,2"
2) "2,2"
3) "1,1"
4) "2,1"# 统计 2,2 这个点 的 hash 值。
127.0.0.1:6379> geohash geos 2,2
1) "s037ms06g70"

4、redis 应用 场景:

1)redis 用于控制数据库表主键 id,为数据库表主键提供生成策略,保障数据库表的主键唯一性此方案适用于所有数据库,且支持数据库集群。

2)redis 控制数据的生命周期,通过数据是否失效控制业务行为,适用于所有具有时效性限定控制的操作。

3)redis 可应用于各种结构型和非结构型高热度数据访问加速。

4)redis 应用于购物车数据存储设计。

5)redis 应用于抢购,限购类、限量发放优惠卷、激活码等业务的数据存储设计。

6)redis 应用于具有操作先后顺序的数据控制。

7)redis 应用于最新消息展示。

8)redis 应用于随机推荐类信息检索,例如热点歌单推荐,热点新闻推荐,热卖旅游线路,应用APP推荐大V推荐等。

9)set 类型数据的扩展操作:

  • redis 应用于同类信息的关联搜索,二度关联搜索,深度关联搜索。
  • 显示共同关注(一度)。
  • 显示共同好友(一度)。
  • 由用户A出发,获取到好友用户B的好友信息列表(一度)。
  • 由用户A出发,获取到好友用户B的购物清单列表(二度)。
  • 由用户A出发,获取到好友用户B的游戏充值列表(二度)。

10)redis 应用于同类型不重复数据的合并操作。

11)redis 应用于同类型数据的快速去重。

12)redis 应用于基于黑名单与白名单设定的服务控制。

13)redis 应用于计数器组合排序功能对应的排名。in

14)redis 应用于定时任务执行顺序管理或任务过期管理。

15)redis 应用于即时任务/消息队列执行管理。

16)redis 应用于限时按次结算的服务控制。

17)redis 应用于基于时间顺序的数据操作,而不关注具体时间。

18)redis 应用基于状态控制的批量任务执行.

19)redis 应用基于分布式锁对应的场景控制。

20) 导入并加载指定配置文件信息,用于快速创建 redis 公共配置较多的 redis 实例配置文件,便于维护。

21)redis 应用于信息状态统计。

22)redis 应用于独立信息统计。

23)redis 应用于地理位置计算。

上一节关联链接请点击:
# Redis 入门到精通(七)-- redis 删除策略

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/380163.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NVIDIA全面转向开源GPU内核模块

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

199.二叉树的右视图(DFS)

给定一个二叉树的根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 示例 2: 输入: [1,null,3] 输出: [1,3] 示例 3: 输入: [] 输出: [] 解题…

“生日悖论”简析——公式计算、代码模拟

“生日悖论”共享生日概率,通项公式计算,代码模拟计算。 (笔记模板由python脚本于2024年07月17日 18:16:40创建,本篇笔记适合会基础编程的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free&…

ranger审计日志对接CDH solr

作者:耀灵 一、准备条件 1、已安装完毕ranger-admin 2、已在CDH上部署solr(注意在安装solr时更改下solr在zk上的节点信息) 二、更改相关配置 1、修改ranger-2.1.0-admin/contrib/solr_for_audit_setup/install.properties SOLR_USERsolr …

FreeRTOS的中断管理、临界资源保护、任务调度

什么是中断? 简介:让CPU打断正常运行的程序,转而去处理紧急的事件(程序),就叫中断。 中断优先级分组设置 ARM Cortex-M 使用了 8 位宽的寄存器来配置中断的优先等级,这个寄存器就是中断优先级…

使用 OpenCV 和 YOLO 模型进行实时目标检测并在视频流中显示检测结果

文章目录 Github官网简介视频帧推理视频设备ID安装依赖 检测示例分类示例姿势估计 Github https://github.com/ultralytics/ultralytics 官网 https://docs.ultralytics.com/zhhttps://docs.ultralytics.com/zh/quickstart/ 简介 Ultralytics 是一个软件公司,专…

基于 CNN(二维卷积Conv2D)+LSTM 实现股票多变量时间序列预测(PyTorch版)

前言 系列专栏:【深度学习:算法项目实战】✨︎ 涉及医疗健康、财经金融、商业零售、食品饮料、运动健身、交通运输、环境科学、社交媒体以及文本和图像处理等诸多领域,讨论了各种复杂的深度神经网络思想,如卷积神经网络、循环神经网络、生成对…

Element UI DatePicker选择日期范围区间默认显示前一个月和本月

要求&#xff1a;点击el-date-picker选择时间范围时&#xff0c;默认展开当月和上个月。 但是Element UI的组件默认展开的是本月和下一个月&#xff0c;如下图所示&#xff1a; 改为 <span click"changeInitCalendarRange"><el-date-picker v-model"r…

8月长沙学术会议:经济金融发展国际会议(ICEFD 2024)

经济金融发展国际会议&#xff08;ICEFD 2024&#xff09;将于2024年8月20-22日在长沙盛大举行。本次会议汇聚了国内外众多高校、科研机构、企业界及其他相关领域的专家学者&#xff0c;共同探讨经济金融发展的新趋势、新挑战和新机遇。 长沙&#xff0c;这座历史悠久的文化名…

Android车载MCU控制音量和ARM控制音量的区别和优缺点—TEF6686 FM/AM芯片

不要嫌前进的慢&#xff0c;只要一直在前进就好 文章目录 前言一、系统架构图1.MCU控制音量的架构图&#xff08;老方法&#xff09;2.ARM控制音量的架构图&#xff08;新方法&#xff09; 二、为啥控制音量不是用AudioManager而是执着去直接控制TDA7729&#xff1f;三、MCU控制…

wls2下的centos使用桥接模式连接宿主机网络独立静态ip

前提&#xff1a;wsl2已安装&#xff0c;可正常更新 1.在控制面板中&#xff0c;打开开启或关闭windows功能&#xff0c;将里面的 Hyper-V功能打开&#xff0c;此处涉及重启 2. 按一下win键&#xff0c;输入hy&#xff0c;上面可以看到Hyper-V Manager,点进去 3.选择右边的 Vi…

【C语言初阶】C语言数组基础:从定义到遍历的全面指南

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ ⏩收录专栏⏪&#xff1a;C语言 “ 登神长阶 ” &#x1f921;往期回顾&#x1f921;&#xff1a;C语言函数 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀数组 &#x1f4d2;1. 什么是数组…

npm install报错:npm error ERESOLVE could not resolve

从git上拉取一个新vue项目下来&#xff0c;在npm install时报错&#xff1a;npm error ERESOLVE could not resolve 有网友分析原因是因为依赖冲突导致报错&#xff0c;解决方法如下&#xff1a; # --legacy-peer-deps&#xff1a;安装时忽略所有peerDependencies&#xff0c…

大鲸鱼docker-compose单机容器集群编排工具

目录 一、Docker-compose 概述 二、Docker-compose简介 三、YML文件格式及编写注意事项 1.yml文件是什么 2.yml问价使用注意事项 3.yml文件的基本数据结构 四、Docker-compose 配置 1.Docker-Compose 配置常用字段 2.Docker Compose常用命令 3.使用Docker-compose创建…

win10删除鼠标右键选项

鼠标右键菜单时&#xff0c;发现里面的选项特别多&#xff0c;找一下属性&#xff0c;半天找不到。删除一些不常用的选项&#xff0c;让右键菜单变得干净整洁。 1、按下键盘上的“winR”组合按键&#xff0c;调出“运行”对话框&#xff0c;输入“regedit”命令&#xff0c;点击…

创建鸿蒙手机模拟器(HarmonyOS Emulator)

文 | Promise Sun 一.前提条件&#xff1a; 鸿蒙项目开发需要使用模拟器进行开发测试&#xff0c;但目前想在DevEco Studio开发工具中使用模拟器就必须到华为官网进行报名申请&#xff0c;参加“鸿蒙模拟器&#xff08;HarmonyOS Emulator&#xff09;Beta活动申请”。 申请审…

gitlab新建仓库

总贴 每个git网站都有不同的创建项目的方式&#xff0c;现在举例gitlab&#xff0c;其他例如gitee&#xff0c;gitcode&#xff0c;都是差不多的&#xff0c;自行百度 1![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/dae875d9048940c0aeb292c07d6a4a62.png)1和2是项…

C# 之工控机数据类型 高低位(大小端)、BitConverter、IsLittleEndian、字节数组转换(高低位)

八种基本数据类型&#xff1a;byte、short、int、long、float、double、boolean、char byte 8位、有符号的以二进制补码表示的整数 min : -128&#xff08;-2^7&#xff09; max: 127(2^7-1) default: 0 对应包装类&#xff1a;Byte short 16位、有符号的以二进制补码表示…

spark shell

1.进行shell命令行 spark-shell 2.创建RDD 2.1 读取文件创建RDD 2.1.1读取linux文件系统的文件创建RDD --需要保证每一个worker中都有该文件 val data1 sc.textFile("file:/opt/file/word.txt") 2.1.2读取hdfs文件系统上的文件创建RDD val data2sc.textFile("…

正点原子STM32(基于HAL库)6

目录 TFTLCD&#xff08;MCU 屏&#xff09;实验TFTLCD 简介TFTLCD 简介液晶显示控制器FSMC 简介FSMC 关联寄存器简介 硬件设计程序设计FSMC 和SRAM 的HAL 库驱动程序流程图程序解析 下载验证 LTDC LCD&#xff08;RGB 屏&#xff09;实验RGBLCD<DC 简介RGBLCD 简介LTDC 简介…