Redis发布订阅案例
Redis 实战windows 安装 redis在 github 中找到 redis 的版本发布页面,选择相应的版本。点击链接:https://github.com/tporadowski/redis找到右边的 release ,点击跳转后,选择合适的版本下载安装(如*.zip)。 在Redis的安装目录下打开cmd窗口 查看版本: 1redis-server --version 然后执行命令来启动服务: 1redis-server.exe redis.windows.conf 打开Redis客户端进行连接使用redis-cli.exe命令来打开Redis客户端: 12redis-cli.exe -h 127.0.0.1 -p 6379#windows 本地默认连接的话,可直接使用 redis-cli.exe,后面可省略 java8 订阅模式(JavaSE)添加maven依赖 12345<dependency> <groupId>redis.clients</groupId> <artifactId>jedis<...
DNS 工作原理
DNS 核心作用DNS(域名系统,Domain Name System)适用于将 域名 转换为 IP 的服务。 域名与 IP 的映射:DNS 本质上是一个分布式数据库,存储了域名与对应 IP 地址的映射关系。 DNS 的组成部分 域名空间(Domain Name Space): 以树状结构组织域名,例如:根域(.) → 顶级域(.com) → 二级域(sbnvidia.com) → 子域(www.sbnvidia.com) DNS 服务器: 递归解析器(Recursive Resolver):用户直接访问的服务器(如 ISP 提供的 DNS 或公共 DNS 如 8.8.8.8),负责代替用户完成查询。 根域名服务器(Root Server):全球共 13 组,存储顶级域(如 .com、.org)的地址信息。 顶级域服务器(TLD Server):管理特定顶级域(如 .com 服务器存储所有以 .com 结尾的域名信息)。 权威域名服务器(Authoritative Server):存储具体域名的 IP 地址(如 example.com 的权威服务器由域名所有者管理)。 ...
使用cdn提升网站的访问速度
cdn 概述和分析通过 CDN(内容分发网络)将静态资源缓存到全球节点,显著提升访问速度。 因此可使用 cdn 提升 github pages 访问速度慢的问题。 阿里云域名获取访问阿里云官网获取:https://wanwang.aliyun.com/domain身份验证需要花费半小时的时间。 添加域名的 DNS 记录域名购买成功后,且状态为正常。点击操作中的“解析”菜单,进入DNS配置操作。 添加两个记录,添加完成后需要等待,可以点击左上方“域名解析问题详细诊断”,查看结果。如图 github pages 绑定域名将配置好的域名绑定到 github pages 中。并且勾选 Enforce HTTPS 。如图: 修改成功后,便可通过域名访问。 修改base路径访问之后样式不对,缺少东西,是其他js和css的请求路径不对,多了一个 “blog”。将 config.ts 中的 base 改为:”/“提交代码,pages action 部署之后,访问没有异常,便是成功部署完成。 绑定 cloudflare CDN访问官网:https://www.cloudflare-c...
deepseek 本地搭建
本地搭建 deepseek ,搭建属于自己的 AI 了解 Ollamaollama(Omni - Layer Learning Language Acquisition Model 的缩写,也可以意译为 “全层学习语言习得模型”。),lama 有 羊驼 的意思,故图标为一只羊驼 {style=”display: block; margin: 0 auto;”} 官网地址:https://ollama.com/其主要目的是:Get up and running with large language models. 翻译为:启动并运行大型语言模型。 此为 ollama 在 github 介绍时的原文:https://github.com/ollama/ollama/blob/main/README.md 言简意赅说一下,就是通过它,用户能够轻松在本地部署 AI 模型,将 AI 本地化。 安装 OllamaOllama 官方下载地址:https://ollama.com/download根据不同的系统下载对应的包。 windows 系统安装打开浏览器,访问 Ollama...
AI 入门
AI 入门 基础的 AI 知识,作为了解使用 了解 AI 领域的树形结构123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960人工智能(Artificial Intelligence)├─ **1. 机器学习(Machine Learning)**│ ├─ 监督学习(Supervised Learning)│ │ ├─ 回归(Regression)│ │ └─ 分类(Classification)│ ├─ 无监督学习(Unsupervised Learning)│ │ ├─ 聚类(Clustering)│ │ └─ 降维(Dimensionality Reduction)│ ├─ 强化学习(Reinforcement Learning)│ │ ├─ 马尔可夫决策过程(MDP)│ │ └─ 深度强化学习(Deep RL)│ └─ 深度学习(Deep Learning)│ ├...
mysql 常见错误
MySQL 错误剖析每个 MySQL 错误都由标识错误的以下部分组成: ERROR NUMBER 是标识每个错误的唯一编号。SQLSTATE 是标识 SQL 错误情况的代码。ERROR MESSAGE 以人类可读的格式描述错误。下面是一个 MySQL 错误示例: 1ERROR 1146 (42S02): Table 'test.no_such_table' doesn't exist 在上面的示例中: 1146 是错误号 42S02 是 SQLSTATE 表 ‘test.no_such_table’ 不存在是错误消息 You have an error in your SQL syntax1ERROR 1064 (42000): You have an error in your SQL syntax 这意味着 MySQL 由于语法问题而无法理解您的查询。通常,问题的原因是忘记将某些文本或值括在反引号或引号中。例如,而不是在 MySQL 查询中使用数据库名称,因为它应该是 。my-databasemy-database 错误消息甚至会更进一步,并...
idea 使用方便记录
记录 idea 使用过程中遇到的问题 springboot的yml文件没有小叶子下载 Spring Boot Helper 插件 好用的插件 名字 作用 操作 官网 translation 翻译帮助翻译英文文档 Ctrl+Q查看注释,Ctrl+shift+y 翻译 ,或者打开自动翻译文档 https://yiiguxing.gitee.io/translation-plugin/#/docs?id=usage Spring Boot Helper yml文件小叶子和其他 下载就有小叶子 不知道 快捷键123456格式化文档:Ctrl+Shift+Alt+L文件内替换:Ctrl+R进入方法体:Ctrl+B提交git的commit:Ctrl+K快速折叠if/else语句:Ctrl+Shift+。try-catch-finally:Ctrl+Alt+T 使用过程中遇到的问题启动报错 windows defender might impact performance1234567891011windows defender might impact performa...
优化与源码
优化与源码 1. 优化1.1 扩展序列化算法序列化,反序列化主要用在消息正文的转换上 序列化时,需要将 Java 对象变为要传输的数据(可以是 byte[],或 json 等,最终都需要变成 byte[]) 反序列化时,需要将传入的正文数据还原成 Java 对象,便于处理 目前的代码仅支持 Java 自带的序列化,反序列化机制,核心代码如下 1234567891011// 反序列化byte[] body = new byte[bodyLength];byteByf.readBytes(body);ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream(body));Message message = (Message) in.readObject();message.setSequenceId(sequenceId);// 序列化ByteArrayOutputStream out = new ByteArrayOutputStream();new ObjectOutputStream(...
Netty 进阶
Netty 进阶 1. 粘包与半包1.1 粘包现象服务端代码 12345678910111213141516171819202122232425262728293031323334353637383940414243444546public class HelloWorldServer { static final Logger log = LoggerFactory.getLogger(HelloWorldServer.class); void start() { NioEventLoopGroup boss = new NioEventLoopGroup(1); NioEventLoopGroup worker = new NioEventLoopGroup(); try { ServerBootstrap serverBootstrap = new ServerBootstrap(); serverBootstrap.channel(NioS...
Netty 入门
1. 概述1.1 Netty 是什么?12Netty is an asynchronous event-driven network application frameworkfor rapid development of maintainable high performance protocol servers & clients. Netty 是一个异步的、基于事件驱动的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端 1.2 Netty 的作者 他还是另一个著名网络应用框架 Mina 的重要贡献者 1.3 Netty 的地位Netty 在 Java 网络应用框架中的地位就好比:Spring 框架在 JavaEE 开发中的地位 以下的框架都使用了 Netty,因为它们有网络通信需求! Cassandra - nosql 数据库 Spark - 大数据分布式计算框架 Hadoop - 大数据分布式存储框架 RocketMQ - ali 开源的消息队列 ElasticSearch - 搜索引擎 gRPC - rpc 框架 Dubbo - rpc 框架 ...











