Dify-遇到的问题
参考文献
上传知识库时,使用bge-m3,报错Vector database connection error
具体指无法连接到weaviate
使用官网的版本
1234# 假设当前最新版本为 0.15.3git clone https://github.com/langgenius/dify.git --branch 0.15.3docker-compose up -d
排查下来docker-compose.yaml中的weaviate没有启动,以及服务器docker-compose版本
1234567891011121314151617181920212223# The Weaviate vector store.weaviate: image: semitechnologies/weaviate:1.19.0 profiles: - '' - weaviate restart: always volumes: # Mount the Weaviate data directory to the con tainer. ...
知识点-RAID
参考文献
https://support.huawei.com/enterprise/zh/doc/EDOC1100048779?section=j00n
RAID控制卡下磁盘状态
物理磁盘状态
状态
说明
Available(AVL)
硬盘可能未就绪,并且不适合在逻辑盘或热备池中使用.
Cfgincompat
硬盘配置不兼容.
Copyback/Copybacking
新盘正在替换热备盘.
Diagnosing
硬盘状态正在诊断.
Degraded(DGD)
硬盘是逻辑盘的一部分,处于降级状态.
Erase In Progress
硬盘正在进行擦除.
Failed(FLD)
当“Online”状态或“Hot Spare”状态的硬盘出现不可恢复的错误时,会体现为此状态.
Fault
硬盘故障.
Foreign
硬盘中包含外部配置.
Free
硬盘状态空闲,未被使用.
Hot Spare(HSP)
被设置为热备盘.
Inactive
硬盘属于未激活逻辑盘的成员盘,在激活逻辑盘后方可使用硬盘.
JBOD
硬盘以直通方式使用. ...
SQL-CASE
[TOC]
参考文献
SQL进阶教程
CASE表达式
12345678910-- 简单CASE表达式CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女'ELSE '其他' END-- 搜索CASE表达式CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女'ELSE '其他' END
在编写SQL语句的时候需要注意,在发现为真的WHEN子句时,CASE表达式的真假值判断就会中止,而剩余的WHEN子句会被忽略.为了避免引起不必要的混乱,使用WHEN子句时要注意条件的排他性.
1234-- 这样就不会出现'第二'CASE WHEN col_1 IN ('a','b') THEN '第一' WHEN col_2 ...
SQL-自连接的用法
[TOC]
参考文献
SQL进阶教程
自连接的用法
可重排列、排列、组合
12345678910111213141516171819202122CREATE TABLE Products(name VARCHAR(16) PRIMARY KEY, price INTEGER NOT NULL);-- 可重排列·排列·组合INSERT INTO Products VALUES('苹果', 50);INSERT INTO Products VALUES('橘子', 100);INSERT INTO Products VALUES('香蕉', 80);-- 用于获取可重排列的 SQL语句SELECT P1.name AS name_1, P2.name AS name_2 FROM Products P1, Products P2;-- 用于获取排列的 SQL语句SELECT P1.name AS name_1, P2.name AS name_2 FROM Products P1, Products P2WHERE P1.na ...
NodeJs遇到的问题
libtool: error: unrecognised option: '--static'
解决办法 1export PATH=/Library/Developer/CommandLineTools/usr/bin:$PATH
算法-Gossip协议
参考文献
Gossip协议
算法-共识算法
参考文献
一文读懂11个主流共识算法, 彻底搞懂PoS,PoW,dPoW,PBFT,dBFT这些究竟是什么鬼
分布式一致性与共识算法
Raft user study
Paxos
共识简介
所谓共识,简单理解就是指大家都达成一致的意思.
拜占庭容错算法
工作量证明(PoW,Proof of Work)
简单理解就是一份用来确认你做过一定量的工作的证明。监测工作的整个过程通常是极为低效的,而通过对工作的结果进行认证来证明完成了相应的工作量,则是一种非常高效的方式。比如现实生活中的毕业证、驾驶证等等,也是通过检验结果的方式(通过相关的考试)所取得的证明。
工作量证明系统(或者说协议、函数),是一种应对拒绝服务攻击和其他服务滥用的经济对策。它要求发起者进行一定量的运算,也就意味着需要消耗计算机一定的时间。
实用拜占庭容错算法(PBFT:Practical Byzantine Fault Tolerance)
非拜占庭容错算法/故障容错算法(Crash Fault Tolerance,CFT)
CFT 解决的是分布式的系统中存在故障,但不存在恶意节点的场景下的共识问题。 也就是说, ...
解决方案-汇总
参考文献
流量削峰
流量削峰的目的是在流量突增时,通过平滑处理请求,避免系统被过高的瞬时负载击垮.
开发层面:
限流,可以对每秒、每分钟、每小时等时间窗口内的请求数进行限制,避免短时间内请求量过大导致系统过载
解决方案-限流器
队列处理:对于瞬时流量过高的请求,可以使用 消息队列(如 Kafka、RabbitMQ)将请求异步处理.请求先入队列,后台系统根据处理能力逐步消费队列中的任务.
请求排队与优先级调度:通过 线程池 和 优先级队列 控制处理请求的优先级,对于非关键请求,可以将其排队等待
运维层面
通过 Nginx、HAProxy 等负载均衡工具,均匀分配请求到不同的后端服务节点,避免单点压力过大.
在流量突增时,通过 自动扩容(Auto Scaling) 技术,动态增加处理节点(如 Kubernetes 自动扩容、AWS EC2自动扩容等).
延迟响应
在高并发系统中,当无法快速处理某些请求时,通过延迟响应可以缓解系统的压力并防止系统崩溃.
开发层面
异步处理:对于不需要立即返回的操作,使用异步处理,如使用 Java CompletableFut ...
算法-指数退避算法
参考文献
https://en.wikipedia.org/wiki/Exponential_backoff
指数退避算法设计与原理
指数退避算法
实例
spring-retry
org.springframework.retry.interceptor.RetryInterceptorBuilder
示例
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106package cn.holelin.ct.pacs.manager;import cn.hutool.json.JSONUtil;import cn.holelin.ct.pacs.config.DefaultPacsServerProperties;i ...
Linux-Mac M1 debug linux kernel
参考文献
搭建 Linux 内核网络调试环境(vscode + gdb + qemu)
M1 Mac: Linux Kernel Development Environment Setup
搭建环境
使用ubuntu-20.04.5-live-server-arm64.iso镜像文件,使用虚拟机环境搭建Ubuntu20.04,在其基础上编译linux kernel
安装编译内核需要的依赖
1234567891011121314151617181920212223root@holelin:~# sudo apt install git build-essential kernel-package fakeroot libncurses5-dev libssl-dev ccache flex bison libelf-devReading package lists... DoneBuilding dependency treeReading state information... Donebison is already the newest version (2:3.5.1+ ...