- 博客(233)
- 资源 (1)
- 收藏
- 关注
原创 ssh免密登录失效与恢复(.ssh权限被修改可能被攻击等安全问题)
不能被任意修改,权限检查很严格,如果权限过宽,任意人都能修改。如APP接受用户输入文件上传路径,如果该参数不严格校验,上传攻击文件。看到异常信息,就一行错误,不太明显,modes在sshd C等语言实现中就是指的文件/文件夹属主属组其它用户的权限这个参数。后重新创建用户及免密登录设置,否则只能逐个恢复相关文件/文件夹的权限设置,可以参考正常环境上的相关文件/文件夹的权限设置。免密登录失效,在host128的登录认证日志其实是有提示的,用户家的。如果免密登录配置不多,也没其它东西直接删除,直接。
2025-02-09 14:06:09
314
原创 本地跑一个deepseek R1阉割版
较多同学可能使用了ollama拉取并启动deepseek r1大模型并找一个合适的开源webui进行交互,或/huggingface推荐的vLLM/SGLang来测试。但考虑本地小霸王PC(12core/16G)可能不够用,便找了一个较小的,基于Qwen蒸馏?而来的一个小模型,于是想到用之前搞千问大模型的环境来搞(transformer框架加载启动模型,使用gradio暴露接口提供web界面),参考拉取阿里千问测试项目,啥都不用改。
2025-02-09 12:07:50
267
原创 基于K8S的微服务:一、服务发现,负载均衡测试(附calico网络问题解决)
使用K8S部署server1,server2两个服务,server2调用server1的/test1接口,需支持负载均衡。
2024-12-22 20:18:12
1219
1
原创 K8S官方java sdk与fabric8 sdk
1、官方sdk提供Java,go,python等多种语言版本,fabric8仅Java2、官方sdk api稍难用一点,fabric8有更友好的api,比如基于fabric8 的创建出来的client对象可以直接操作各种资源,且大量使用builder模式构建参数对象,基本不用看文档就能玩。3、fabric8内置了更多的高级功能,比如模拟框架、更简单的配置选项以及更好的错误处理机制,支持自定义资源定义,并且更容易集成到 CI/CD 流程中。fabric8官方入口fabric8文档。
2024-12-08 15:05:18
784
原创 nodejs puppeteer自制一个html转pdf小工具(带代码及运行环境的可执行文件)
Puppeteer是一个nodejs库,它提供了一个高级API来控制Chrome或Firefox(比如这里要用它实现html转PDF),通过DevTools协议或WebDriver BiDi。安装puppeteer包会安装一个160M+的谷歌chrome.exe。打出一个70M+的app.exe,双击即可执行,输出output.pdf。),即package.json指向的main指向该js文件作为程序入口。IDEA安装nodejs插件,插件Node.js项目。新建一个index.js,内容为。
2024-12-07 11:59:43
571
原创 K8S疑难概念理解——容器运行时。CRI实现从Docker切为containerd历史
早期版本的k8s直接使用了docker部分功能,比如容器的创建、运行、监控、停止、销毁等,这一些与容器生命周期相关的逻辑实现就可称之为容器运行时。k8s意识到docker过于笨重,如docker-cli,docker swarm等组件k8s都用不上,那么能不能只要docker容器运行时这部分逻辑呢?于是K8S就把docker容器运行时(容器的创建、运行、监控、停止、销毁等实现)抽取为容器运行时接口CRI(Container Runtime Interface),也就是说容器运行时是CRI的具体实现。k8
2024-12-01 11:34:31
410
原创 K8S疑难概念理解——Pod,应该以哪种Kind来部署应用,为什么不直接Pod这种kind?
Pod是Kubernetes中的最小部署单元,可以包含一个或多个紧密相关的容器(也就是如下yaml image可以配置不止一个,只是多数情况只配一个镜像也就是Pod里面只跑一个容器)。以nginx为例,直接部署Pod参考。nginx应该选择以Deployment这种kind来部署,案例如下。最直观的,这样部署的nginx可以方便进行扩容操作。直接部署Kind为Pod资源类型。
2024-12-01 10:39:32
1284
原创 springcloud alibaba之shcedulerx实现分布式锁
springcloud alibaba shcedulerx看起来有点像xxl job那样的任务调度中间件,其实它是一个分布式锁框架,含有两种实现一种基于DB实现的,另一种基于云服务实现,这里看看基于DB mysql8是怎么实现的。
2024-11-24 15:30:55
474
原创 Elasticsearch向量搜索:从语义搜索到图搜图只有一步之遥
上集说到语义搜索,这集接着玩一下图搜图,这种场景在电商中很常见——拍照搜商品。图搜图实现非常类似语义搜索,代码逻辑结构都很类似…
2024-11-22 19:57:56
677
2
原创 摸一下elasticsearch8的AI能力:语义搜索/vector向量搜索案例
模型都从modelcope找的,hugginface也能找到差不多的,但需要代理且速度很慢。描述的某地的气候,确实为最不相关,这种效果是ES传统的term,fuzzy,prefix,phase_match,regex等搜索方式达不到的。ES有RBAC安全验证,需要curl请求es注册用户并配置角色权限,比较麻烦,这里直接关闭,相关度高的几个sentence的_score最高的排在了最前面,是近义词,也就是有字词重叠的词语间向量化后的欧式距离更小。虽然描述天气好,但至少与天气相关,而。
2024-11-22 13:01:22
814
原创 spring ai alibaba检索增强生成RAG技术实现企业内部知识库检索(问答)系统,not模型微调
企业内部可能有各种文档如会议纪要,产品说明,操作规程,各种规范等,如何让这些内容方便内部检索提高工作效率,以前的做法可能大多是依赖实现,AIGC的发展让我们有了更优的实现方案。基于LLM实现企业内部知识库检索常见方案有:基于(Fine-tuning)与。
2024-11-17 13:11:37
934
原创 本地跑一个Qwen2.5
12核16Gwindows(再减配一半应该也可能跑,这个模型资源利用很低,参数量大一些对设备要求要高些,GPU不一定要有,CPU也能试玩)下载后默认存在了这个路径(从日志可以看到路径),953M,后续运行web_demo.py测试是要指定这个模型路径。github直接把main分支下下来,什么都不用改,IDEA打开即可,web_demo.py即是要测试的。到modelscope或huggingface下载预训练模型文件。下载方式有几种,这里选用官方的modelscope工具来下载。
2024-11-16 12:54:40
885
原创 父子进程信号通信的诡异故事
但使用system函数出现了问题,主进程已发起SIGTERM信号,也显示子进程结束了,但实际python进程还一直在运行,控制台也一直在输出。pstree看看进程树,原来system启动的python进程其实不是儿子而是孙子进程,这才没收到信号,信号都没爹处理了。不同进程通信方式常用的有socket,共享内存,信号signal 等,信号的主要特点是轻量级和快速响应,但传递的信息量有限.男主使用fork方式启动子进程以便拿到python进程pid,并通过向pid发送信号以停止子进程.
2024-11-03 16:38:25
129
原创 通义千问大模型Java调用,百炼
一、大模型服务平台百炼百炼是阿里新出的一个大模型服务平台,聚合了多个千问大模型及其它一些大模型的调用,暴露了一个同一的http请求入口,调用接口需要申请一个apikey,不需apisecret用于计费,有免费额度,较小的模型很便宜,各语言可以直接拼接请求参数发起http调用,主流开发语言python,Java等还提供了SDK使用起来更方便。二、Java sdk调用与eventStreampackage com.example.demo.qianwen;import java.util.Arrays
2024-09-08 20:02:23
1307
1
原创 面向AI编程2024
AIGC是一种生成式AI,主要方向是文本、图像、音视频,特别是文本,这里有一些AIGC产品,似乎很多,五花八门的,其实很多是同一个或同一类,可能基础模型都一样,喂的训练数据不一样罢了。AIGC不同于传统ML,DL,它依赖于大模型作为底层技术支撑,而大模型训练需要大量数据、大量设备,需要很高的人力物力投入,故只有为数不多的一些氪金玩家,比如BAT字节等能玩且玩得挺好,普通玩家可以基于他们的预训练模型再加工或直接调用他们的接口。不建议用国外产品:要代理FQ,麻烦;可能要收费,不能白嫖用起来就不爽;
2024-09-07 11:51:37
589
原创 GO环境及入门案例
go不是面向对象语言, 其指针、结构体等比较像C,知名的go 开源项目有docker k8s prometheus node-exporter等。
2024-04-21 21:35:02
723
原创 2023nacos源码解读第4集——整体了解nacos源码模块
windows 自带的tree 不够用,使用node npm安装一个类Linux 的。
2023-11-26 22:33:36
380
原创 2023nacos源码解读第3集——nacos-client核心功能之微服务调用和配置管理测试
接口远程调用nacos-service-a(启动了两个实例,注意配置文件配置的springboot动态端口。nacos-service-b(只启动一个实例)的。监听到keys changed后refresh。nacos-service-a的两个实例的。nacos页面新增配置,对应项目配置的。接口 (默认为轮询负载均衡策略)
2023-11-14 22:30:28
522
1
原创 2023nacos源码解读第2集——nacos-server的启动
nacos 是一个典型的server-client中间件,server这里安装最新的nacos-server 2.3.0-BETA版本。
2023-11-13 22:48:44
821
原创 2023nacos源码解读第1集——开端
为什么解读nacosnacos是微服务的核心中间件:注册中心、配置中心Java开发的、阿里开发的、stars比较多、热度高学习优秀开源项目的各种最佳实践,提升自己代码水平、架构水平几大原则全面功能使用:全面使用有助于理解代码阅读官方文档: 官方文档全面最新,包括readme、设计文档、用户手册整体到局部:先了解工程全貌,整体架构设计;再到解读工程模块,理解模块间关系,重点解读各个模块的亮点实现断点调试:静态代码解读很可能解读错误、且不易抓住主线梳理总结:通过拓扑图、流程图、时序图、
2023-11-08 21:17:50
192
原创 deeplearning4j训练推理案例2023——手写数字识别
主要是deeplearning4j、javacv的一些包,案例打出的jar包1.3G,pom来自github deeplearning子项目。1个epoch训练耗时100s,准确率达97%,详见代码注释,框架的api做得还比较好用。的dl4j-examples模块。6W训练集,1W测试集。参考其readme文档。
2023-10-26 00:27:58
831
原创 python版opencv人脸训练与人脸识别
代码逻辑基本同Javacv,但更简洁,这里训练出来模型准确度也高于Javacv (可能是参数不一致导致的)
2023-10-24 23:09:55
891
1
原创 java版opencv之Javacv各种场景使用案例
文章目录1.关于Javacv~~2. [官网下载最新OpenCV4.8](https://opencv.org/releases/),并解压~~ *不一定要安装opencv*~~3. 将opencv的jar包及动态库dll文件引入项目~~4.pom引入javacv库5.测试5.1 图片美颜5.2 图片人脸检测5.3 提取视频中的语音5.4 音视频剪辑5.5 录屏5.6 推流与流媒体播放 [参考](https://xinchen.blog.youkuaiyun.com/article/details/1214349
2023-10-22 23:46:58
4720
原创 lsof的基本应用及恢复误删的文件
lsof全名list opened files ,yum install lsof即可。linux环境中,任何事物都是文件,设备是文件,目录是文件,甚至sockets也是文件。
2023-09-24 13:06:11
589
原创 了解一下最新堡垒机jumpserver V3.x
python开发的分布式系统, 较1.X版本有了较大变动,整体架构也复杂了许多,还好官方有一键安装启动脚本,启动后近10个docker镜像。,默认账号密码admin/admin, 第一次需要改密(一定要记住7AKDJ37Z7STyFnz)。
2023-09-14 21:50:21
200
原创 极简极速-Bitset (bitmap)实现考勤打卡场景
直接使用Java的bitset实现考勤打卡,这里数据集存储DB需要转化,如Bitset#toLongArray(),再转为json进行存储。
2023-09-10 13:52:50
375
原创 Clion 找不到头文件,无法DEBUG,无法进入断点,断点灰了
设置build type,可以通过如下按钮设置(优先级最低)或CMakeList.txt 增加。③检查运行"target|toolchain"是否正确。既优化又能调试的版本。MinSizeRel;①检查cmake头文件引入指令。或cmake命令行参数设置。
2023-08-25 00:14:43
1860
原创 JAVA JNA 调用C接口的三种方式
编译并生成头文件(这里java17没找到javah命令,改用java8的,但注意javac ,javah要使用同一个Java版本的)使用Clion实现头文件的接口:新建C项目,引入jna_MyNative.h,并实现其中的方法。姿势3实现的C接口,Java依旧可以使用姿势1,2的方式来调用,注意函数名为。同步Linux上jdk的头文件失败,本地无法找到符号,但可以正常运行。编译时注意引入jdk头文件包下的jni.h等。新建MyNative.java。使用Linux上的Java运行。建个普通maven项目。
2023-08-23 20:36:28
2056
原创 从源码Debug深入spring事件机制,基于观察者模式仿写spring事件监听骨架
Java中已定义观察者模式事件及监听器顶级接口} }因为Java提供的EventListener无具体监听方法,且无合适的子接口,故这里自定义一个类似spirng的子接口。这样后续事件发布就是遍历这种类型接口并调用onApplicationEvent()方法} }@Override/*** TODO});
2023-08-13 19:30:35
463
原创 JMH— java API性能测试,方法参数调优测试框架
JMH即Java Microbenchmark Harness,一个易用Java基准测试框架,适合API性能测试,参数调优测试。
2023-08-13 14:58:31
330
原创 concurrent.CompletableFuture处理多线程多阶段业务场景
【代码】concurrent.CompletableFuture处理多线程多阶段业务场景。
2023-08-13 09:03:41
183
原创 高性能远程通信框架grpc基本使用
Java 有maven插件进行proto文件生成Java文件,故不用单独去安装proto了,但proto基本语法还得了解。谷歌开源远程进程调用框架,支持多语言系统间通信,适用于各种分布式系统,使用http2协议并使用protobuf系列化通信数据,高性能。protogen里文件都是生成的,插件配置了读取这个目录,并生成到protogen文件夹里。,为方便使用,这里server,client都在同一个工程里。实际是通过proto.exe将.proto文件生成Java文件,除了。等依赖并,并copy需要的类。
2023-08-02 21:52:40
716
1
原创 Java另一种debug方法(not remote jmv debug),类似python远程debug方式
这种Debug类似python的debug方式,是运行时将业务代码及依赖推送到Linux并使用Linux的java运行运行程。只要本地能运行,就能自动将代码推送到Linux运行,不需打包及设置远程debug jvm参数,适合一些项目Debug调试。运行时会推送一些依赖及业务代码到/opt目录下,我的java命令路径是/usr/bin/java,故这里配置/usr,会自动拼接“/bin/java”
2023-07-29 21:13:10
408
原创 IDEA配置远程docker解释器及无编码提示/关联不到python依赖问题
如果代码报红,没有提示,找不到符号,可以点击“Add Package”随便安装一个任意依赖,来触发远程解释器的依赖更新到本地。如下的Path mappings的映射路径改为同上的路径。启动后新拉起ID为325xx容器并运行python3程序。选择需要的镜像及镜像内python3的path。将本地代码映射到linux一个喜欢的目录。,修改docker启动参数。docker 启动参数新增。
2023-07-29 00:41:44
1043
1
原创 pytorch2.x 官方quickstart测试
安装时一定要指定–index-url https://download.pytorch.org/whl/torch/ ,否则安装的是cpu版本,可以访问https://download.pytorch.org/whl/torch/,找到需要的版本如。按官方 quickstart拼起來的代码,如果有GPU且安装的GPU版本pytorch则跑GPU上否则CPU(所有CPU),本地测试20CPU与1 个geforce GPU耗时差不多20s。
2023-07-28 00:58:25
275
原创 python/java/c等程序退出钩子函数
main函数正常或异常退出时调用(exit调用时就相当于main退出),不响应ctrl+c,kill等发出的信号。捕捉ctrl+c等发出的信号。
2023-07-27 23:22:03
332
原创 python的多进程/多线程及其返回值的获取,类比Java多线程
python为解释性语言,使同一时刻只能有一个线程执行,故python的多线程不是真正的多线程,在io密集型应用有更好的‘并行’效果,但python多进程能真正并很简单的实现并行。
2023-07-21 00:25:56
1877
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人