NOT
常见的PLC通信协议及相关介绍
2023-07-26 一、常见的PLC通信协议: Modbus:Modbus是一种串行通信协议,它支持多种物理层接口(如RS-232、RS-485等),可以实现PLC与其他设备(如HMI、变频器等)之间的数据交换。 Profibus:Profibus是一种用于工业自动化领域的现场总线通信协议。它支持 ......
多线程锁
## 一、悲观锁和乐观锁 ### 1.1. 一级目录1 #### 1.1.1. 二级目录1 #### 1.1.2. 二级目录1 ### 1.2 八锁案例 #### 1.2.1 说明 1. 标准访问有ab两个线程,请问是先打印邮件还是短信? 2. sendEmal方法中加入暂停3秒钟,请问先打印邮件还 ......
SecureCRT通过端口映射将服务器的端口映射到本机
首先要先连上要映射的服务器 然后点击 上面就写要映射的本机端口ip 下面就是要映射的服务器的ip端口 我这是以mysql为例 配置好之后点击保存 然后重新打开一个窗口 然后就可以用本机端口去连接了 这种方式要保持服务器一直连接着,,可以使用 top命令 让窗口保持活动 ......
多项式牛顿迭代 学习笔记
求 $f \ast g \bmod {x^n}$ ,要开二倍数组,取前 $n$ 项。 要求 $g(f(x)) \equiv 0 \pmod {x^n}$,考虑倍增。 $n=1$ 时不难得到 $f$ 的值。 设当前答案为 $f_0 \pmod {x^{n/2}}$,想求出 $f \pmod {x^n} ......
poi XSSFCellStyle 导出设置 单元格颜色
设置单元格背景色: // 设置背景色 XSSFCellStyle headersStyleCell = workbook.createCellStyle(); XSSFColor color = new XSSFColor(java.awt.Color.YELLOW, new DefaultInde ......
Nginx负载均衡(四)
负载均衡描述 早期的网站流量和业务功能都比较简单,单台服务器足以满足基本的需求,但是随着互联网的发展,业务流量越来越大并且业务逻辑也跟着越来越复杂,单台服务器的性能及单点故障问题就凸显出来了,因此需要多台服务器进行性能的水平扩展及避免单点故障出现。那么如何将不同用户的请求流量分发到不同的服务器上呢? ......
nginx实现服务器端集群搭建(五)
nginx与tomcat部署 环境准备(tomcat) 1.准备Tomcat环境,并在Tomcat上部署一个web项目 2.准备Nginx环境,使用Nginx接收请求,并把请求分发到Tomat上3、浏览器访问:http://192.168.200.146:8080/demo/index.html 获 ......
mybaties --- insert的底层封装代码
//提交,当前的对象到数据库//.save()方法是IService接口提供的,而EmployeeService接口继承了IService接口employeeService.save(employee); /*default boolean save(T entity) { return SqlHe ......
Redis的有序集合Zset为啥用跳表不用二叉树
1.zset有个很核心的操作叫范围查找,我们要查找某个范围区间的元素。跳表可以做到logN时间复杂度内的快速查找,找到区间的起点,往后遍历就可以了。红黑树范围查找的效率没跳表高。 2.跳表的实现比红黑树简单,容易实现。可以有效的控制跳表的索引层级,来控制内存的消耗。。 转载:https://www. ......
RabbitMQ由于x-message-ttl设置与代码不一致导致declareQueue时IO异常
## 具体异常: ``` log Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method(reply-code=406, reply-text=PRECONDITI ......
vue : 无法加载文件 C:\Users\jianfei\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。
# 背景 在新电脑上配置vue环境 ``` PS E:\CODE_PROJ\myvue\vue23\P61_使用脚手架\vue_test> npm install -g @vue/cli npm WARN deprecated source-map-url@0.4.1: See https://gi ......
centos上安装nvm
1.下载安装包到本地 wget https://github.com/nvm-sh/nvm/archive/refs/tags/v0.39.1.tar.gz 2.将本地安装包上传到服务器 3.创建安装包解压目录 mkdir -p /root/.nvm 4.解压安装包到目录 tar -zxvf nvm ......
画图控件QCustomplot
对刷新率、点数、性能上要求高,对界面美观程度不是特别重视,则选QCustomPlot。 使用方法是通过添加现有文件将 qcustomplot.h、qcustomplot.cpp加入工程,并在pro文件中加入printsupport,放置widget并提升为QCustomPlot。 【官网】 Qt P ......
2.1.1 进位计数制
 ##最古老的计数方法 使用 表单发送同步请求 参数inputStr: 参数intputInt: (2)使用ajax发送异步请求,发送的数据为json对象 参数username: 参数password: <scripttype="text ......
使用相对路径创建快捷方式
1.首先将可执行程序发布到桌面快捷方式。 2.将快捷方式拖放到自己想要的位置。 3.右击-属性,修改目标为:%windir%\system32\cmd.exe /c start Bin\Debug\Practice.exe,注意,这个Bin和快捷方式在同一目录。 4.起始位置设为空。 5.点击应用- ......
QT jom: Makefile [debug] Error
电脑上原本安装有QT5.15.0+VS2015+VS2008 Qt Creator 正常使用 安装vs2019后报错 jom: Makefile [debug] Error 1 jom: Makefile [debug] Error 2 lnk1158:cannot run rc.exe 解决方法: ......
MyBatis-Plus数据权限控制
平时开发中遇到根据当前用户的角色,只能查看数据权限范围的数据需求。列表实现方案有两种,一是在开发初期就做好判断赛选,但如果这个需求是中途加的,或不希望每个接口都加一遍,就可以方案二加拦截器的方式。在mybatis执行sql前修改语句,限定where范围。 当然拦截器生效后是全局性的,如何保证只对需要 ......
大规模敏捷框架管理工具(SAFe,SOS)
Leangoo领歌提供了完整的SAFe框架功能,包括:Program Backlog,启动PI,规划PI,Team Backlog,启动迭代,规划迭代,迭代执行等。它覆盖了敏捷项目研发全流程,包括小型团队敏捷开发,规模化敏捷SAFe,Scrum of Scrums大规模敏捷。 ......
linux服务器性能调优(udp为主)
udp的好处很明显,效率高,减少了建立连接的流程,减少了报文头的占比,也减少了维护连接的开销。缺点就是不稳定,会丢包。还有就是由于udp的高效,导致用于udp的一些应用开发,并发都比较大,更容易丢包。 # io复用 SO_REUSEADDR SO_REUSEPORT 创建listener用来监听数据 ......
MySql —— 死锁场景
参考: 小林coding: https://xiaolincoding.com/mysql/lock/deadlock.html 出世&入世:https://blog.csdn.net/weixin_54828627/article/details/129379140 死锁的四个必要条件: 互斥 占 ......
企业通讯软件都有哪些?4款常见的企业通讯软件推荐
在现代企业中,高效的内部沟通和协作是成功的关键。为了满足这一需求,越来越多的企业开始使用专门的企业通讯软件。这些软件提供了一系列功能,包括即时通讯、视频会议、文件共享等,帮助团队成员更好地协作和沟通。那么企业通讯软件都有哪些?下面推荐几款比较常见的企业通讯软件。 飞书 飞书是一款由字节跳动推出的企业 ......
11
def getHighLowFre(image): f = torch.fft.fft2(image) # 计算频率 freqs = torch.fft.fftfreq(image.shape[-1]) # print(freqs) # 设定阈值,用于分离高频和低频信息 threshold = 0. ......
SQL语言可以分为四类
SQL (Structured Query Language,结构化查询语言) 是用于管理关系数据库系统的标准化语言。SQL语言可以分为以下几个方面: 数据定义语言 (DDL):用于定义和管理数据库中的结构,包括创建、修改和删除数据库对象(如表、视图、索引等)。例如:CREATE TABLE、ALT ......
高性能、高扩展、高稳定:解读 EasyMR 大数据组件自定义可扩展能力
随着互联网技术的不断发展以及大数据时代的兴起,企业对于[数据分析和洞察](https://www.dtstack.com/dtengine/easymr?src=szsm)的需求日益增长。大多数企业都积累了大量的数据,需要从这些数据中快速灵活地提取有价值的信息,以便为用户提供更好的服务或者帮助企业做 ......
013 学习笔记--锁
锁: 全局锁:锁定数据库中的所有表 表级锁:每次操作锁住整张表 行级锁:每次操作锁住对应的行数据 1.概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CUP、RAM、IO)的争用以外,数据也是一种 供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所 ......
fastapi文件上传下载
```python import os import time from fastapi import APIRouter, File, UploadFile from fastapi.responses import FileResponse router = APIRouter(tags=['U ......
Cilium系列-5-Cilium替换KubeProxy
## 系列文章 * [Cilium 系列文章](https://ewhisper.cn/tags/Cilium/) ## 前言 将 Kubernetes 的 CNI 从其他组件切换为 Cilium, 已经可以有效地提升网络的性能. 但是通过对 Cilium 不同模式的切换/功能的启用, 可以进一步提 ......
关于找工作
其实是普通程序员才找不到工作 由于程序员这行鱼龙混杂,培训的,转行的,毕业的,离职的,水平层次不齐,导致市场上对于程序员的需求远远供大于求,以为随便背背八股文就能月薪过万,这个市场薪资都被他们拉低了,真的是扰乱市场 个人还是对这个问题还是比较有话语权的,1月初面试,那会疫情还没有完全开放,还是比较好 ......
新pc
```python with open('p1.mp4', 'wb') as file: with open('dash.json', 'r', encoding='utf-8') as f: json_data = f.read() dt = json.loads(json_data) m3u8 ......