华为OD机考双机位C卷 - 路口最短时间问题 (Java Python JS GO C++ C)

核心内容摘要

Java项目部署避坑指南:从阿里云服务器到Nginx配置的全流程实战
3个突破性技巧:如何用智能预约技术解析实现纪念币预约效率提升10倍

从零到一:ChatTTS固定音色语音合成的实战避坑指南

Redis 本质是一款超高速的内存键值数据库核心作用是把常用数据存入内存像给系统装上 “加速器”既能快速响应缓存请求又能有序处理消息队列还能实现直播间点赞数、设备传感器数据等场景的实时计数是日常开发和运维中提升数据处理效率的核心工具。

作为长期使用 Redis 的开发者最直观的感受就是它的 “快”—— 对比传统数据库用 Redis 做缓存时用户请求的响应时间能从毫秒级缩短到

1 秒左右比如电商项目的商品库存计数用 Redis 能做到秒级更新大大提升了用户体验而且它的适配性强不管是 Linux 还是 Windows 系统部署和使用都比较便捷日常维护成本也低。

但过去 Redis 只能在局域网内访问让它的实用性打了折扣比如我负责的工厂传感器数据存储项目只能在厂区局域网内查看实时数据出差时想优化算法只能等回到厂区才能操作而用上 cpolar 后彻底摆脱了这种限制现在不管是在咖啡厅、高铁站还是异地出差都能通过公网访问本地 Redis 存储的传感器数据随时调整算法参数甚至把家里 NAS 上的 Redis 作为小型数据中心异地办公时也能随时调取数据原本只能局限在局域网的 Redis现在能适配远程调试、异地协作、移动办公等更多实际工作场景真正做到了随时随地使用。

安装教程在下面呦

安装Docker步骤本文中使用的操作系统为Ubuntu

2

04添加Docker源# Add Dockers official GPG key:sudoapt-getupdatesudoapt-getinstallca-certificatescurlgnupgsudoinstall-m 0755 -d /etc/apt/keyringscurl-fsSL https://download.docker.com/linux/ubuntu/gpg|sudogpg --dearmor -o /etc/apt/keyrings/docker.gpgsudochmodar /etc/apt/keyrings/docker.gpg# Add the repository to Apt sources:echo\deb [arch$(dpkg --print-architecture)signed-by/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \$(./etc/os-releaseecho$VERSION_CODENAME)stable|\sudotee/etc/apt/sources.list.d/docker.list/dev/nullsudoapt-getupdate安装 Docker 包sudoapt-getinstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin通过运行映像来验证 Docker 引擎安装是否成功sudodockerrun hello-world此命令下载测试映像并在容器中运行它。

当容器运行它打印确认消息并退出。

使用docker拉取redis镜像首先在终端中执行下方命令拉取镜像sudodockerpull redis然后执行查看镜像命令sudodockerimages可以看到成功拉取了Redis镜像。

启动redis容器在启动容器前需要简单修改一下Redis外部挂载的配置文件。

本教程中首先创建了/usr/local/redis/conf/redis.conf文件然后使用nano编辑器写入了网上找的redis.conf文件保存后退出编辑器。

#任何ip可以访问bind

0.

0.

0#守护进程#daemonize yesdaemonizeyes#不启用保护模式protected-mode no#指定redis运行的端口port6379tcp-backlog511timeout0#持久化⽂件名称dbfilename xdclass.rdb#持久化⽂件存储路径dir/data/#持久化策略, 10秒内有个1个key改动执⾏快照save101######之前配置#######导出rdb数据库⽂件压缩字符串和对象,默认是yes会浪费CPU但是节省空间rdbcompressionyes# 导⼊时是否检查rdbchecksumyes#aof持久化配置#appendonly yes#appendfilename appendonly.aof#appendfsync everysec# aof重写期间是否同步no-appendfsync-on-rewrite no# 重写触发配置auto-aof-rewrite-percentage100auto-aof-rewrite-min-size 64mb# 加载aof时如果有错如何处理# yes表示如果aof尾部⽂件出问题写log记录并继续执⾏。

no表示提示写⼊等待修复后写⼊ aof-load-truncatedyes接下来在终端中执行下方命令启动容器sudo docker run -p 6379:6379 --name redis -v /usr/local/redis/data:/data -v /usr/local/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf这里我给容器的名称起为redis您可以根据需要替换成其他名称。

然后执行下方命令查看容器是否正在运行sudodockerps可以看到刚才创建的myredis容器正在运行中。

本地连接测试

1 安装redis图形化界面工具现在我们已经在docker中本地部署了redis容器如果要在本地进行连接测试可以下载redis图形化界面工具Redis Desktop Manager下载地址https://pan.baidu.com/s/19FLBKyQkRlK4ktZFRg3j6Q?pwd6666提取码

6

2 使用RDM连接测试默认安装完成后点击左下红框位置的连接redis server按钮在弹出的窗口中需要填入本机ip地址和redis的端口号输入后点击连接测试如看到弹出框提示成功连接即本地连接redis测试成功。

公网远程访问本地redis不过我们目前只能在本地使用刚刚部署的Jupyer Notebook如果身在异地想要远程访问在本地部署的redis容器但又没有公网ip怎么办呢我们可以使用cpolar内网穿透工具来实现无公网ip环境下的远程访问需求。

1 内网穿透工具安装下面是安装cpolar步骤cpolar官网地址: https://www.cpolar.com使用一键脚本安装命令curl-L https://www.cpolar.com/static/downloads/install-release-cpolar.sh|sudobash向系统添加服务sudosystemctlenablecpolar启动cpolar服务sudosystemctl start cpolarcpolar安装成功后在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。

2 创建远程连接公网地址登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道隧道名称可自定义注意不要与已有的隧道名称重复本例使用了redis协议TCP本地地址6379端口类型随机临时TCP端口地区选择China Top点击创建创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址接下来就可以在其他电脑异地上将该地址与端口号分别复制到Redis Desktop Manager访问即可。

如下图所示ip地址位置填写

tcp.cpolar.top端口号填写13983 点击链接测试可以看到连接成功小结为了方便演示我们在上边的操作过程中使用了cpolar生成的TCP公网地址隧道其公网地址是随机生成的。

这种随机地址的优势在于建立速度快可以立即使用。

然而它的缺点是网址是随机生成这个地址在24小时内会发生随机变化更适合于临时使用。

如果有长期远程访问Redis的需求但又不想每天重新配置公网地址还想地址好看又好记那我推荐大家选择使用固定的TCP地址的方式来远程访问。

3 使用固定TCP地址远程访问接下来保留一个固定TCP地址登录cpolar官网点击左侧的预留找到保留的TCP地址为远程服务器连接保留一个固定的地址地区选择China VIP描述即备注可自定义本例使用red123点击保留地址保留成功后复制生成的公网地址打开cpolar web ui管理界面点击左侧仪表盘的隧道管理——隧道列表找到我们刚才创建的随机公网地址隧道redis点击编辑修改隧道信息将刚才保留成功的固定TCP地址配置到隧道中端口类型选择固定TCP端口预留的TCP地址复制粘贴官网保留成功的地址本例中为

tcp.vip.cpolar.cn:23876点击更新隧道更新成功后点击左侧仪表盘的状态——在线隧道列表可以看到公网地址已经更新为了固定TCP地址。

接下来与之前的操作一样可以在其他电脑异地上使用这个固定的TCP地址访问redis即可。

ip地址位置填写

tcp.vip.cpolar.cn端口号填写23876 点击链接测试可以看到使用固定的TCP地址成功远程连接了本地Redis使用cpolar内网穿透工具无需购买域名服务器也不用设置路由器那么麻烦轻松实现大家在公网远程访问本地服务的需求Redis 的高性能满足了数据处理的效率需求cpolar 则补齐了其网络访问的短板。

对于开发者和运维人员来说这种组合让工作不再受地域和网络限制更贴合日常办公的实际需求提升了工作灵活性。

本篇文章知识点来源[cpolar官网][https://www.cpolar.com]cpolar博客配置二级子域名: https://www.cpolar.com/blog/configure-the-secondary-subdomain-namecpolar博客配置自定义域名: https://www.cpolar.com/blog/configure-your-own-domain-namecpolar博客配置固定TCP端口地址: https://www.cpolar.com/blog/configure-fixed-tcp-port-addresscpolar博客配置固定FTP地址: https://www.cpolar.com/blog/configure-fixed-ftp-address

九么9.1玩命加载中-九么9.1玩命加载中应用

百度百家号客服电话人工服务

123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123