- 博客(64)
- 收藏
- 关注
原创 四种常见限流方案
根据实际场景需求,可以选择合适的限流算法组合使用,例如:使用令牌桶应对突发流量,结合滑动窗口进行精确控制。最简单的限流方式,按固定时间窗口统计请求次数。改进的窗口算法,统计更精确的时间窗口。恒定速率处理请求的经典算法。允许突发流量的经典算法。
2025-04-02 15:07:06
370
原创 Spark、Flink 和 TensorFlow 三大分布式数据处理框架对比
优化性能,支持流处理(微批模式)、机器学习(MLlib)、图计算(GraphX)等多种场景。(Native Streaming),并通过流模型模拟批处理。如需进一步了解技术细节或代码示例,可参考各框架的官方文档及上述引用来源。,支持分布式训练与推理。TensorFlow 是。
2025-04-02 09:30:41
640
原创 Redis 的哨兵模式
哨兵模式的灵活性:通过配置多个主节点,哨兵模式可同时满足高可用性和扩展性需求。与Redis Cluster的区别哨兵模式:数据按业务逻辑分片,需应用层路由。Redis Cluster:数据按哈希槽自动分片,无需应用层干预。选型建议优先选择一主多从:数据量较小、业务逻辑简单。选择多主多从:业务线隔离、写性能要求高。选择Redis Cluster:超大规模数据、自动分片需求。通过合理配置,哨兵模式可在保证数据一致性的前提下,有效提升系统的可用性和扩展性。
2025-04-01 14:59:58
402
原创 向量数据库选型调研详细报告
在人工智能和大模型蓬勃发展的今天,向量数据库凭借其高效的高维数据检索能力,成为语义搜索、RAG(检索增强生成)、推荐系统等场景的核心基础设施。向量数据库专门用于存储和查询向量,这些向量通常来自对文本、语音、图像、视频等非结构化数据的向量化处理。与传统数据库不同,向量数据库能够处理更多非结构化数据,并通过专门的索引(如k - nn索引)提供向量相似性搜索,还具备管理矢量数据及其他数据类型、工作负载管理、访问控制等数据库功能。随着大语言模型的兴起,向量数据库的需求急剧增长。
2025-03-29 13:44:46
298
原创 如何防御TCP洪泛攻击
TCP洪泛攻击利用了TCP协议的三次握手过程。在正常的TCP连接建立过程中,客户端向服务器发送SYN(同步)数据包,服务器收到后回复SYN-ACK(同步确认)数据包,客户端再发送ACK(确认)数据包,完成连接建立。攻击者通过向目标服务器发送大量伪造源IP地址的SYN数据包,而不完成三次握手的最后一步,使得服务器为这些半开连接分配资源并等待客户端的ACK数据包,从而耗尽服务器的连接资源,导致正常的连接请求无法被处理。
2025-03-27 17:39:14
641
原创 Mulvus向量库数据插入失败排查
在使用 Mulvus 提供的 API 插入数据时,API 会返回相应的结果信息。Mulvus 服务会记录详细的日志信息,可以查看服务日志文件来获取更多的错误信息。确保插入的数据格式正确,例如向量的维度是否与集合定义的维度一致。会返回详细的错误信息,根据错误信息可以定位问题。可以通过查看集合的统计信息来确认插入的数据量是否符合预期。目录下,根据日志中的错误堆栈信息可以进一步排查问题。如果插入的数据行数与预期一致,则说明数据插入成功。可以通过简单的查询操作来验证数据是否成功插入。用于检查插入操作是否成功。
2025-03-18 09:10:25
265
原创 CI/CD构建与注意事项
CI(Continuous Integration,持续集成):是一种软件开发实践,开发团队成员频繁地将代码集成到共享的代码仓库中。每次集成都会通过自动化的构建(包括编译、打包等)和测试来验证,从而尽早发现集成错误。CD(Continuous Delivery/Deployment,持续交付/持续部署)持续交付:是在持续集成的基础上,将经过测试的代码自动部署到预生产环境,保证软件可以随时发布到生产环境,但发布决策通常由人工触发。持续部署。
2025-03-17 16:11:27
933
原创 Milvus 中常见相似度度量方法
在 Milvus 中,相似度度量方法用于衡量向量之间的相似程度,不同的度量方法有不同的特点、优缺点和适用场景。以下是对 Milvus 中常见相似度度量方法的详细介绍以及对应的search参数示例。
2025-03-12 18:16:57
1122
原创 Milvus 的索引
特点:FLAT 是最简单直接的索引方式,它直接存储原始向量数据,不做任何压缩或转换。在搜索时,会对集合中的所有向量进行遍历,计算其与查询向量的相似度。优点搜索结果精确,能保证 100% 的召回率,因为会遍历所有向量。无需额外的索引构建过程,插入数据后可立即进行搜索,使用简单。缺点搜索效率极低,随着数据量的增加,搜索时间会呈线性增长,性能较差。适用场景数据量较小的场景,对搜索效率要求不高,但对结果准确性要求极高。用于验证其他索引类型的搜索结果准确性。search参数示例。
2025-03-12 18:09:41
715
原创 Milvus向量数据库操作的详细输入输出参数说明及示例
以下将详细介绍 Milvus 向量数据库中保存(插入)、删除、查询(query和search)操作的输入输出参数,并给出代码示例。
2025-03-12 17:55:39
708
原创 K8S自动扩缩容实践
HPA:通过调整 Pod 副本数应对流量波动,适合无状态服务。VPA:通过调整 Pod 资源请求优化资源利用率,适合资源需求变化大的场景。两者结合时需谨慎,避免资源调整冲突。
2025-03-12 15:56:14
525
原创 Kubernetes(K8s)集群中使用 GPU
在 Kubernetes(K8s)集群中使用 GPU,需要完成安装驱动、部署插件、配置 containerd、实现 GPU 虚拟化及部分使用等一系列步骤,下面为你详细介绍。
2025-03-10 22:28:52
1132
原创 三级缓存架构
三级缓存架构是一种通过分层缓存设计来优化系统性能、降低数据库负载、提高数据访问效率的解决方案,尤其适用于高并发、高吞吐量的业务场景(如电商、社交平台、实时推荐等)。其核心思想是通过多级缓存逐层过滤请求,减少对底层存储的直接访问。三级缓存架构通过分层设计平衡性能、一致性与复杂度,是应对高并发场景的经典方案。实际应用中需结合业务特点灵活调整各级缓存策略,并辅以监控工具(如Prometheus + Grafana)持续优化命中率和响应时间。3. 广播失效本地缓存(如MQ通知)2. 读取分布式缓存。
2025-03-10 10:40:22
856
原创 基于 Kubernetes 部署 Sentence Transformers Embedding 模型服务
的详细 YAML 配置示例,包含模型推理 API 服务、资源管理及高可用部署方案。部署采用 FastAPI 框架封装模型,并通过 Kubernetes 提供高并发推理能力。通过以上配置,您可以在 Kubernetes 上快速部署一个高性能的 Sentence Transformers Embedding 模型服务,支持动态扩缩容和资源隔离。以下是一个基于 Kubernetes 部署。
2025-03-09 17:29:28
846
原创 用K8S部署Milvus服务
通过以上配置,您可以在 Kubernetes 上部署一个基础的 Milvus 向量数据库集群,适用于开发测试环境。生产部署需根据负载调整副本数、存储方案及网络策略。的简要介绍及基于 Kubernetes 的详细部署 YAML 代码,包含高可用架构、持久化存储及关键组件配置。
2025-03-09 17:04:37
926
原创 用K8S部署OpenSearch
以下是关于OpenSearch的介绍及基于Kubernetes的详细部署YAML代码,包含集群部署和可视化工具OpenSearch Dashboards的配置。OpenSearch 是Amazon在Elasticsearch分支后维护的开源搜索和分析套件,包含以下核心组件:2. 创建 ConfigMap (OpenSearch配置)3. 创建 Secret (存储管理员密码)4. 创建 Headless Service (节点发现)5. 创建 OpenSearch StatefulSe
2025-03-08 19:07:10
781
原创 基于Kubernetes部署MySQL主从集群
以下是一个基于Kubernetes部署MySQL主从集群的详细YAML示例,包含StatefulSet、Service、ConfigMap和Secret等关键配置。MySQL主从集群需要至少1个主节点和多个从节点,这里使用实现主从自动配置。
2025-03-07 16:34:58
628
原创 Kubernetes(K8S)部署 Redis Cluster 集群
通过以上步骤,我们使用 Kubernetes 的 ConfigMap、Service 和 StatefulSet 成功部署了 Redis Cluster 集群。在实际生产环境中,还可以根据需要调整配置和资源,以满足业务需求。
2025-03-05 18:33:30
554
原创 Redis 之 UNLINK 命令
UNLINK 命令的主要特点是它是非阻塞的,它会在后台异步地删除键值对,而不会阻塞服务器的正常操作。这使得 UNLINK 命令非常适合于删除大量键值对或者删除耗时较长的键值对,因为它可以在后台完成删除操作,而不会对其他操作产生影响。UNLINK 命令的作用类似于 DEL 命令,都是用于删除键值对,但是它的实现方式略有不同。总结来说,UNLINK 命令是 Redis 提供的一种非阻塞删除键值对的方式,适用于大量或耗时较长的删除操作。UNLINK 命令的返回值与 DEL 命令相同,表示成功删除的键的数量。
2023-06-07 20:01:07
4120
原创 如何让服务器端的Nginx支持http2.0协议
如果客户端请求使用HTTP/1.1协议,服务器可以在响应中指定HTTP/2.0协议,并自动升级协议。需要注意的是,如果Web服务器和客户端不支持HTTP/2.0协议,则仍将使用较旧的HTTP/1.1协议。如果想在Web服务器上启用HTTP/2.0协议,需要确保HTTP服务器软件已更新到支持HTTP/2.0的版本,并进行必要的配置。
2023-04-25 11:29:00
2968
1
原创 MySQL札记
获取MySQL的配置文件正确位置cappu@szbddeMacBook-Pro-7 ~ % which mysqld/opt/homebrew/bin/mysqldcappu@szbddeMacBook-Pro-7 ~ % /opt/homebrew/bin/mysqld --help | grep -A 1 'Default options'cappu@szbddeMacBook-Pro-7 ~ %转载本文,请注明出处、作者...
2021-11-25 19:54:02
599
原创 MySQL非交互式查询
Background通过shell脚本,定期非交互式地询问数据库情况,记录信息,进而达到监控目的。PremiseMySQL CLIProcessmysql -e “” 命令可以实现非交互式执行查询语句。mysql -h www.sirius.com -P 3306 --default-character-set=utf8 -u root -p root -e "show variables;" >> mylog.txtmysql --helpmysql Ver
2021-11-11 20:14:33
2083
原创 Navicat通过HTTP通道连接数据库
Background由于内网安全限制,或者网关限制,Navicat应用在本地无法常规地建立连接,访问远程数据库。Premise安装Navicat系列工具Mac OSLNMP架构服务器ProcessHTTP通道脚本目录:/Applications/Navicat Premium.app/Contents/Resources/ntunnel_mysql.php/Applications/Navicat Premium.app/Contents/Resources/ntunnel_pg
2021-11-03 19:49:06
1803
原创 Linux命令tcpdump的小贴士
Processnetstat 命令查看当前机器网络 sudo netstat -iKernel Interface tableIface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flgeth0 1500 0 47692728 0 0 6 2038254 0 0 0 BMRUeth0:0 1500
2021-03-12 17:04:25
407
原创 awk 工具基于 Nginx 的 access_log 统计 QPS
ProcessNginx 日志格式log_format main '$remote_addr $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '$http_user_agent $http_x_forwarded_for $request_time $upstream_response_time $upstream_a
2020-08-17 11:52:40
690
原创 Shell脚本监控CPU利用率平滑重启进程
Process#! /bin/bashcounter=0utilization=`top -n 2 | fgrep "Cpu(s)" | tail -n 1 | awk '{printf "%s", $2}'`echo $utilizationif [ `echo "$utilization > 90" | bc` -eq 1 ]; then ((counter++))fiecho $countersleep 30if [ $counter -eq 1 ]; t
2020-08-11 17:29:46
612
原创 Atlassian 配置邮件服务
ProcessConfluenceJIRAConclusion这里用腾讯企业邮的 SMTP 服务,不同的服务提供方在具体的配置参数可能不同,以上仅供参考,请君灵活处理。在配置邮件服务前,需要登陆常用的电子邮件,开启 SMTP 服务。(开启方法参考电子邮件提供方的文档)ReferencesAtlassian 全家桶之2020安装札记转载本文,请注明出处、作者...
2020-07-31 11:59:19
1275
原创 Linux 系统指定用户运行命令
Process在服务器部署过程中,有些脚本需要指定的用户运行,不然,以 root 用户运行,创建的文件不能被同项目的其他指定用户读写,更且,即便是可以授权,这也是及其不方便。su - www -c "/opt/php71/bin/php /data/www/sirius/artisan distribute:coupons" 查看当前用户whoamisu 命令使用说明su --help用法: su [选项] [-] [USER [参数]...]将有效用户 id 和组
2020-07-13 14:09:24
6173
原创 Atlassian 全家桶之2020安装札记
EnvironmentLinux VM_16_16_centos 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/LinuxProcess准备安装包见 Atlassian 全家桶及其破解文件百度云盘链接atlassian-confluence-6.7.1-x64.binatlassian-jira-software-7.6.1-x64.binmysql-connect
2020-06-15 23:54:06
1678
原创 Web前端知识点清单
代码打包,模块粘合,webpack。React 经验,react-redux,React Router。函数 dispatch() ,与参数传递。VM 模型。dashboard,仪表盘实现(ECharts)。Api 调用管理。axios 安装,引用,根据状态分发。响应式布局(CSS3,uni-app)。Promise,异步编程的一种解决方案。媒体查询。HTML5 新标签,以及语义化。ES5,ES6,ES7 区别。代码打包工程化后,如何兼容ES6、ES7等多版本。常用布局(flush.
2020-06-11 22:19:02
356
原创 代码日志管理
Environment 1. 前后端分离。 2. 后端日志。Process 1. 日志分类。 (1)requestLog 。 (1)respondLog 。 (1)eventLog 。 2. 记录数据流。 3. 合理断点。 4. 追踪数据,问题定位。Conclusion日志,就是为了更快更高效地定位问题,在无须事故重现的情况下,也可以有数据可依,解决问题。但是,不要滥用日志,否则造成 IO 消耗太大,得
2020-06-08 14:38:24
310
原创 Redis手抄本
EnvironmentLinux VM_0_2_centos 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64 x86_64 x86_64 GNU/LinuxProcess安装yum install redis找到可执行文件以及配置文件路径(在常规经验下的目录没有找到对应的文件)执行命令whereis redis返回结果redis: /etc/redis.confredis
2020-05-12 15:41:25
224
原创 SSH密钥
EnvironmentLinux VM_0_3_centos 3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018 x86_64 x86_64 x86_64 GNU/LinuxProcessssh-keygen 生成密钥。进入密钥存放当前文件夹。cd ~/.sshssh-keygen 命令。ssh...
2020-04-30 16:52:23
475
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人