
技术笔记
文章平均质量分 67
bennybi
心若浮云常自在, 意如流水任东西...
展开
-
PHP和Python脚本的性能监测方案
php与python的性能监测方案原创 2024-11-11 17:39:21 · 853 阅读 · 0 评论 -
Pydantic与Sqlalchemy数据模型的枚举类型实践
【代码】Pydantic与Sqlalchemy数据模型的枚举类型实践。原创 2024-05-21 15:52:33 · 981 阅读 · 0 评论 -
fastapi / kinit 笔记
Kinit 是一套开箱即用的中后台解决方案,可以作为新项目的启动模版,前后端分离架构,开箱即用,在线例子:https://kinit.ktianc.top/login。默认账号:15020221010 密码:kinit2022 - 用的是alembic工具 Welcome to Alembic’s documentation! — Alembic 1.13.1 documentation编辑迁移文件命令执行原创 2024-04-14 20:45:58 · 1019 阅读 · 0 评论 -
LangChain-Chatchat 实践
LangChain-Chatchat 实践原创 2024-05-14 21:56:54 · 794 阅读 · 1 评论 -
个人直播/流媒体服务解决方案实践
在本地局域网建立流媒体服务,并发布到公网服务器供终端(机顶盒/移动设备)订阅浏览原创 2024-05-05 11:49:07 · 777 阅读 · 1 评论 -
Gitlab: Python项目CI/CD实践
Python项目应用Giltab系统, 进行CI/CD实践,分别以fastapi和kinit项目示例。原创 2024-04-18 21:36:40 · 2077 阅读 · 0 评论 -
Python 开发笔记
目录- 根据已有数据表生成实体模型类- 字典合并- 与asyncio一起,在TCP服务端检查客户端是否断连- * 与 ** 的用法- 初始化venv环境- pip- 避免安装时出现 "python setup.py egg_info did not run successfully." 问题- linux下安装tkinter包- 将库中的python模块用作脚本去运行- vscode中的launch.json- 项目根目录定义- 函数参数中的/和*- 类型转换- 关于pytest- fastapi中的数据分原创 2023-12-13 08:51:31 · 896 阅读 · 0 评论 -
VirtualBox7+Ubuntu22集群规划
systemd-networkd 默认使用 /etc/machine-id 来识别,当虚拟机克隆的时候,他们都有一样的 /etc/machine-id 和 DHCP server,因此返回的都是同一个 ip 了。"machine ID"是一个32字符长度的十六进制小写字母字符串, 并以换行符结尾, 其本质是一个128位二进制整数的16进制表示。另一方面,对于无状态系统,如果此文件为空, 将在系统启动的早期自动随机生成一个。,原装了一套Win11专业版,为建设虚拟机集群研究提供基础支持。原创 2023-09-01 12:03:07 · 813 阅读 · 2 评论 -
香橙派4和树莓派4B构建K8S集群实践之八: TiDB
可在KubeSphere看到可用的PVs,等用了SC的Pods起来后就可以赋予绑定,不然这些pod会报错。local-volume-provisioner:v2.3.4 没有for arm体系的版本, 拉取时报错。介绍如何在标准 Kubernetes 集群上通过 TiDB Operator 部署 TiDB 集群。(注:如果用之前默认设好的NFS SC作为tidb的存储类会导致pd,kv pods不能启动)修改对应Stroage Class。编辑客户机hosts。原创 2023-07-10 18:02:48 · 1160 阅读 · 2 评论 -
WSL2下的PHP多版本设置
对于习惯于Win下操作的朋友,WSL2带来了极大的便利,最近需要升级下里面的php版本,分享下过程。如图:目前本机环境是apache2 + 多个php版本。原创 2023-02-27 10:47:40 · 879 阅读 · 0 评论 -
关于PowerDesigner中SQL保留字的去除
说明很长一段时间以来,PowerDesigner都是我工作的好搭档,唯一不爽的地方是其生成的sql中含有一些带双引号的保留字不能去除,一直由于懒的原因而采取绕弯路手动方式修正, 确实是个隐藏得比较深的设定,今天努力了一番终于找出解决方法,分享之...原创 2023-02-25 10:15:51 · 147 阅读 · 0 评论 -
分时数据统计的实现
内,获取5个平均时间点的温度最高值(temperature),作为Api数据输出,给前端统计组件使用。按时段统计数据是常见的需求,以下分享下我的实现例子。- 有一个(如下图)的环境数据采集表,要求按。返回Api数据,前端渲染。原创 2022-10-08 11:30:15 · 842 阅读 · 0 评论 -
Esp32上的门户WiFi设置(Captive Portal WiFi Setup)实践
- 这个标题比较拗口,简单来说就是利用芯片的AP功能,让用户能很方便地给设备设置本地网络WiFi,花了我足足两天来调研、调试、优化,从而达到比较好的效果。- 实例流程:点着esp32, 建立热点AP, 提供DNS和AP服务 =》手机访问热点 =》从扫描列表中选择本地WiFi并设置=》重启芯片- 上图: 1. 基本框架是根据 esp8266-captive-portal (git)搭建的,研究其代码学到很多东西,但其中有些逻辑问题,比如在用户提交完表单后,不能返回正确的结果,这里我做了优化和修正,让用户原创 2022-07-08 22:13:36 · 1742 阅读 · 1 评论 -
mpy-cross 在esp32程序上的实践
通常来说,商业上发布的应用或多或少都有些不愿暴露出去的东西,这时候需要一份编译工具,保密的同时起到加速作用,这时候mpy-cross进入了视线,以下是它的应用实践。 从代码仓库获取 mpy-cross 好了以后,会产生mpy-cross文件 - 方便起见,建个短链为 /mnt/mpy-cross- 去到项目目录,执行如下命令,注意,因各环境下的存储不同,需要用到参数march有个Tips: ESP32 is xtensawin. xtensa is for ESP8266.- 然后脚本里面引用这.原创 2022-07-07 11:01:08 · 846 阅读 · 0 评论 -
关于Gitlab恼人的Git无权限访问问题解决
不知什么时候起,从gitlab.com上新开的项目中拿代码时,冒出ERROR: The project you were looking for could not be found or you don't have permission to view it. 如图: 于是乎,查:- ssh keys,没错,无果- gitlab项目设置,经过几小时筛查,终于发现在 项目 -> Settings -> Respository -> Depoly keys 找到原因,需在这里另外配部署keys,我不知道原创 2022-06-28 14:31:51 · 3156 阅读 · 2 评论 -
客户端(Python)数据/消息上报守护程序实践
要求说明:终端设备(如树莓派)上实现数据采集、上报功能,作为守护程序,命令行支持 start /stop ting /restart 支持实时的日志记录 多线程 python3 环境Daemon方案:1. daemon-python, 比较通用的方式,但不支持 start/stop/restart,不灵活#!/usr/bin/env pythonfrom common.models.App import *import daemonimport common.config as原创 2022-04-26 11:39:34 · 1046 阅读 · 0 评论 -
Docker化MSSQL
说明:配置MSSQL数据库Docker容器1. docker-compose.yml mssql: image: "mcr.microsoft.com/mssql/server:2019-latest" container_name: ${APP_NAME:?err}-mssql restart: always ports: - "1433:1433" environment: SA_PASSWORD: "your password原创 2022-03-31 10:42:10 · 1725 阅读 · 2 评论 -
ERP相关专业缩写/术语/词典
缩写/术语/词典 全名 备注 生产计划部PMC Product Material Control PMC=ProductMaterialControl生产及物料控制,通常分为两个部分:PC:生产控制或生产管制(台、日资公司俗称生管)主要职能是生产的计划与生产的进度控制;MC:物料控制(俗称物控)主要职能是物料计划、请购、物料调度、物料的控制(坏料控制和正常进出用料控制)等。所以PMC一般称为物控部门。 ...原创 2022-03-24 09:38:55 · 3730 阅读 · 0 评论 -
Docker-compose 容器调用的相关命令
目录Mongo Db 导入导出参考:Mongo Db 导入导出# 备份数据库到指定目录docker exec -it mongodb mongodump -h 127.0.0.1:27017 -d {dbname} -o /var/backups -u {user} -p {password}参考:-MongoDB的备份与恢复 - 惨绿少年 - 博客园...原创 2022-01-07 12:14:50 · 1063 阅读 · 0 评论 -
Nginx 点滴
编辑 nginx.confhttp { limit_rate 250k; # 单个请求带宽 limit_conn_zone $binary_remote_addr zone=addr:10m; # 连接限制域 limit_req_zone $binary_remote_addr zone=one:10m rate=20r/s; # 单个ip请求限制速率...编辑 虚拟机文件 uat.conflocation ~ \.php$ { #limi原创 2021-12-28 17:11:15 · 1213 阅读 · 0 评论 -
ES6最佳实践笔记
要点:1. 不要在then()方法里面定义 Reject 状态的回调函数(即then的第二个参数),总是使用catch方法。// badpromise .then(function(data) { // success }, function(err) { // error });// goodpromise .then(function(data) { //cb // success }) .catch(function(err) {转载 2021-10-11 11:52:20 · 137 阅读 · 0 评论 -
WSL2下用mkcert实现localhost安全证书
说明:环境:win10, 已装WSL2, Ubuntu18 LTS, Apache2要求:为localhost, test.com安装证书,使之能以https://localhost, https://test.com 形式访问结果:设置后,firefox / ie能以https访问, chrome / edge 不能Mkcert 仓库:https://github.com/FiloSottile/mkcert步骤:1. 安装mkcert1.1 Win10下安装chocol...原创 2021-09-30 16:08:05 · 767 阅读 · 1 评论 -
Python 多线程图片备份实践
步骤:1. 用工具sqlacodegen建模sqlacodegen mysql+pymysql://developer:developer@localhost/temp > models.py原创 2021-09-24 10:00:53 · 429 阅读 · 0 评论 -
Windows 必备工具, 命令与例子
【代码】Windows 必备工具, 命令与例子。原创 2021-09-18 09:52:54 · 311 阅读 · 0 评论 -
WSL2 局域网访问以及hosts注意事项
powershell 下做端口转发代理:netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=80 connectaddress=172.25.250.32netsh interface portproxy show all其中172.25.250.32是wsl2的内部地址原创 2021-08-19 17:52:45 · 4437 阅读 · 0 评论 -
Swoole 4.6.7 在WSL1下的Socket问题及修正
环境: Win10 + WSL1 (Ubuntu 18.04.3 LTS), php7.3 / 7.4 / 8问题: 启动easyswoole时触发socket错误[2021-07-29 10:54:35][debug][error]:[EasySwoole\Task\Worker bind /Projects/Test/TE001/WebApp/src/daemon/Temp/EasySwoole.TaskWorker.0.sock fail case Invalid argument at f原创 2021-07-31 23:10:25 · 628 阅读 · 0 评论 -
TP6 使用笔记
1. 日志方法: \think\facade\Log::write('sth');日志路径: /src/runtime/app/log原创 2021-03-18 14:20:02 · 478 阅读 · 0 评论 -
Rabbitmq 要点笔记
1、停止应用rabbitmqctl stop_apprabbitmqctl resetrabbitmqctl start_app2、添加用户rabbitmqctl add_user rabbitmqxd xdrabbitmqrabbitmqctl set_user_tags rabbitmqxd administratorrabbitmqctl set_permissions -p "/" rabbitmqxd '.*' '.*' '.*'rabbitmqctl add_user m.原创 2021-01-29 17:02:30 · 482 阅读 · 0 评论 -
Rabbitmq元数据导入导出
操作前需要先下载rabbitmqadmin工具rabbitmqadmin工具依赖rabbitmq_management插件安装rabbitmq_management插件rabbitmq-plugins enable rabbitmq_management下载工具http://{hostname}:15672/cli/rabbitmqadminhttp://{hostname}:15672/cli/rabbitmqadmin]类似UNIX的操作系统用户需要将Rabbitmqadmi原创 2021-01-29 17:00:19 · 2857 阅读 · 0 评论 -
谷歌云 - 用服务账号进行API访问实践
说明有一个谷歌云账号,有两个项目(Projects A / B),实现google api sdk访问其中的资源步骤进入谷歌云后台,项目A- IAM和管理- 服务账号, 创建服务账号,保存 账号邮箱/密钥credentials.json,并授权资源角色 用程序脚本测试,我这里用的是php 7.3, compose.json 加 "google/cloud": "*" 访问项目B资源, 在谷歌云后台切换 B到项目B- IAM和管理- IAM,添加服务账号,填入项目A相同的账号邮箱...原创 2021-01-06 11:24:55 · 1792 阅读 · 0 评论 -
Magento2 安装与使用笔记
单机安装:- 用composer 耐心安装composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition src- 完毕后,选择性运行下列命令-- 停用elastic search 模块bin/magento module:disable {Magento_Elasticsearch,Magento_InventoryElasticsearch,M原创 2020-11-30 18:01:25 · 1107 阅读 · 0 评论 -
PHP 兼容性笔记(不定期更新)
Deprecations and Changes for PHP 7.3 [Avoid Errors] preg_match('/[\w-.]+/', ''); // this will not work in PHP7.3preg_match('/[\w\-.]+/', ''); // the hyphen need to be escaped原创 2020-11-25 10:33:23 · 164 阅读 · 0 评论 -
解决同源策略问题(服务器端)
目录问题描述:服务器端解决方案- Apache2问题描述:front.local.com 为前端网站(A站), img.local.com 为图片站(B站),当A站中的js访问到B站资源时,报错误:"The image has been blocked byCORS policy",即浏览器的同源策略限制了访问。服务器端解决方案- Apache2首先, 确定apahe2.conf 有mod_headers支持LoadModule headers_module /usr.原创 2020-11-19 14:48:56 · 647 阅读 · 0 评论 -
Centos8 KVM 实践 / 镜像扩容
说明:基于Centos8,用KVM工具做虚拟机制作与管理安装:- 从centos官网下最新版的iso, 这里下的是CentOS-8.2.2004-x86_64-boot.iso(开始选 dvd1的反而安装时报错)- 安装时勾选与虚拟机相关的所有选项- 安装VncServer- 为了使VM能以网桥方式与外界互联,做网桥br0, 参考https://blog.youkuaiyun.com/mdykj33/article/details/102638382- 进入Gnome里的虚拟系统管理器,新...原创 2020-09-03 11:10:19 · 769 阅读 · 0 评论 -
AWS 镜像部署及CLI 相关 (不定期整理)
Table of Contents导入镜像:建立角色:角色策略:导入镜像:aws ec2 import-image --description "vm-tpl01" --disk-containers file:///home/ben/aws/containers.jsoncontainres.json[ { "Description": "vm-tpl01", "Format": "raw", "UserBucket": { "S原创 2020-10-24 10:29:13 · 508 阅读 · 0 评论 -
服务器部署说明
- 注:/data0/Server/Logs, /data0/Server/ 权限设为777应用服务器/data0├── gitrepo // 系统平台git仓库├── Projects // 项目文件夹│ ├── BD // 商业项目│ └── Supports // 支持类项目│ └── mantis│ └── mediawiki└── Server ├── Auths.原创 2020-10-23 09:54:50 · 901 阅读 · 1 评论 -
Yii - 带配置的实体CRUD模块生成流程
说明带配置管理的CRUD实体生成流程,例子: 主机Host, 主机配置HostConfig, 通过定制的yii crud模板,生成带配置管理的模块。效果如图:步骤:- gii model 建立带配置原创 2020-10-09 13:56:22 · 278 阅读 · 1 评论 -
KVM 虚拟机上Google Cloud 实践
说明 把本地KVM的一个实例镜像上传到google bucket,应用该镜像创建实例服务器 步骤- 虚拟机信息- 准备上传的镜像文件 (转换格式, 注意必须是disk.raw)# qemu-img convert /home/vms/pool/VM001.qcow2 disk.raw // 转换格式, 注意必须是disk.raw# tar -czSf tpl-vm001.tar.gz disk.raw- 在google 后台传完上述文件后,在Google Cloud.原创 2020-09-11 16:32:03 · 717 阅读 · 0 评论 -
基于Docker的LEMP优化部署实践
部署要求:实现 LEMP栈 虚拟主机映射到宿主机,用户一致,读写权限正常 实现mariadb数据库数据/日志/配置目录映射,以便持久化 实现 nginx / php / mariadb 三者互联,php能扩展更新 实现 nginx 域名证书自动续期 部署便利化,标准化...原创 2020-09-10 14:26:46 · 334 阅读 · 0 评论 -
基于Jenkins的持续集成与部署实践
Table of Contents1.设计要求:2.方案3.实施步骤3.1 准备3.2 安装:dockergitjenkinsJenkins 系统配置Jenkins 项目与任务1.设计要求:基于docker安装与部署,以保持系统的一致性和和维护性 同步/部署的项目数据能自动/手动根据任务安排持久化,能基于版本分支部署 假设有git 项目仓库t1, t1的staging(自动)和live(手动)分支部署到 某主机 nginx 目录下面2.方案-..原创 2020-08-09 18:19:16 · 702 阅读 · 0 评论