- websocket之netty-socketio高性能实时消息推送框架
奇怪的混子
websocket网络协议网络
简介websocket协议的出现,打破http那种只能由客户端发起请求,服务器响应的单项数据传输局面,采用websocket之后,可以由客户端推送数据到服务端,也可以由服务器主动推送数据到客户端,从而同时进行双向通信,便于数据实时更新推送netty-socketio便是为了方便我们进行websocket开发的框架,底层采用netty,提供了可靠高效的性能netty-socketio的官方githu
- 各种工业以太网比较(EtherCAT,EtherNet/IP,ProfiNet,Modbus-TCP,Powerlink)
sensiki
知识
EtherCAT(以太网控制自动化技术)是一个以以太网为基础的开放架构的现场总线系统,EterCAT名称中的CAT为ControlAutomationTechnology(控制自动化技术)首字母的缩写。最初由德国倍福自动化有限公司(BeckhoffAutomationGmbH)研发。EtherCAT为系统的实时性能和拓扑的灵活性树立了新的标准,同时,它还符合甚至降低了现场总线的使用成本。Ether
- python算法模板第一部分(1)(快速排序、快速选择、归并排序、整数二分、实数二分)
啥也不会做
python算法模板算法python数据结构排序算法二分法
注:本文是在学习了acwing的算法基础课后撰写,主要用于记录python版本算法的模板。其中部分参考了acwing众多大佬的题解。1.快速排序思想:用列表中的一个数(pivot)来分割列表,左侧的数都小于pivot,右侧的数都大于pivot。步骤:1.确定pivot。左、右、中点、随机都可以,选择不同代码上可能有细微区别。这里选择中点。2.调整pivot左侧和右侧的数,使左侧的数都小于pivot
- C#使用Openvino.Csharp推理Yolov9c.xml
蔡余申
c#openvinoxml
usingOpenCvSharp;usingOpenVinoSharp;usingOpenCvSharp.Dnn;usingSystem.Runtime.InteropServices;floatsigmoid(floata){floatb=1.0f/(1.0f+(float)Math.Exp(-a));returnb;}string[]read_class_names(stringpath){s
- Docker 完整卸载教程
不太会编程的IT男
Dockerdocker容器linux
简介Docker是一种轻量级的容器化平台,可以帮助开发人员将应用程序及其依赖项打包成一个可移植的容器。但有时我们可能需要完整卸载Docker,卸载旧版本安装新版本,或者不再需要Docker环境。方法一1、停止Docker服务首先停止正在运行的Docker服务。执行以下命令:sudosystemctlstopdocker2、删除Docker安装包接下来删除已经安装的Docker软件包。执行以下命令:
- 计算机基础三:TCP、UDP 与 Socket
望佑
计算机基础tcp/ipudp网络
TCP(TransmissionControlProtocol,传输控制协议)TCP是一种面向连接的协议,用于在网络中提供可靠的数据传输服务。其主要特点包括:面向连接:在数据传输前,TCP需要通过三次握手建立连接,确保发送方和接收方之间的通信通道是可靠的。可靠传输:通过确认应答(ACK)、序列号、超时重传、流量控制、拥塞控制等机制,TCP能够保证数据的可靠传输。全双工通信:TCP连接允许数据在两个
- 精准的集装箱号码识别技术在过磅系统中的应用,显著提升物流效率、减少人为错误
启智畅想
集装箱号OCR识别集装箱号码识别集装箱识别集装箱号码识别交通物流集装箱箱号识别ocr计算机视觉
集装箱号码识别技术在物流厂区过磅系统中的应用,主要通过自动化采集和处理集装箱唯一标识信息,显著提升物流效率、减少人为错误,并实现数据全流程可追溯,货车进入厂区过磅时,系统需快速记录集装箱重量及对应箱号,传统人工录入效率低且易出错。1、应用流程数据采集:在过磅处安装高清摄像头以及车牌识别相机等设备,当车辆与集装箱经过时,快速采集集装箱号码的图像以及车辆的车牌信息。2)识别处理:利用光学字符识别(OC
- 使用Jest和React Testing Library测试组件
小涵
前端框架react.js前端前端框架javascript开发语言typescript
使用Jest和ReactTestingLibrary测试组件在Web开发的世界中,测试和调试是确保应用程序可靠性和质量不可或缺的过程。在本文中,我们将探讨在React中进行测试和调试的各种方法论和工具,React是最受欢迎的用于构建用户界面的JavaScript库之一。推荐超级课程:本地离线DeepSeekAI方案部署实战教程【完全版】Docker快速入门到精通Kubernetes入门到大师通关课
- 空间最小、速度最快:内存高效ZKP原理
mutourend
零知识证明零知识证明
1.引言在快速发展的区块链和密码学领域,经常听说,旨在扩展以太坊或解决大规模计算问题的速度超快的零知识虚拟机(zkVM,zero-knowledgeVirtualMachine)。然而,若要实现真正的隐私,ZKP应在本地运行。这一概念称为本地可验证计算,涉及实现极其节省空间的ZKP,用于本地且资源通常受限的设备——从嵌入式系统到物联网设备再到用户的网络浏览器。基本原则简单但至关重要:当与第三方共享
- 熊出没之小素数域大集锦
mutourend
零知识证明零知识证明
1.引言近年来,密码学,特别是零知识证明(ZK证明)领域的进展,极大地推动了对小素数域(≤64位素数)的兴趣,因为它们在高效算术和实现方面具有良好的特性。著名的例子包括:广泛使用的Mersenne-31(M31):详情见:Polygon团队2023年6月论文《Reed-Solomoncodesoverthecirclegroup》。Goldilocks:详情见:NCCGroup团队2022年2月论
- 什么是DICOM文件?——认识DICOM:医学影像与信息管理的标准化利器
猿享天开
DICOM医学影像专业知识精讲1024程序员节DICOMDICOM医学影像
目录引言什么是DICOM?DICOM的组成DICOM的功能DICOM的应用DICOM的种类DICOM的生成过程DICOM的发展总结引言在现代医学中,影像处理和管理是不可或缺的一环。从MRI、CT、X射线到超声波,医学影像为诊断和治疗提供了丰富的信息。而在医疗影像领域,DICOM(DigitalImagingandCommunicationsinMedicine,数字成像和通信)作为一种国际标准,扮
- TypeScript 与 JavaScript 对比
冬冬小圆帽
javascripttypescript
核心概念对比JavaScript语言类型:动态类型脚本语言诞生时间:1995年(ES1标准)类型系统:运行时类型检查文件扩展名:.js编译需求:无需编译,直接执行TypeScript语言类型:静态类型超集语言诞生时间:2012年(微软开发)类型系统:编译时类型检查文件扩展名:.ts编译需求:需要编译为JavaScript执行技术架构差异维度JavaScriptTypeScript类型注解不支持支持
- Java实现对image图片、pdf文件加水印
轨迹Jinz
java
1、图片importjavax.imageio.ImageIO;importjava.awt.*;importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjava.io.IOException;impo
- Java开发---基础编程规范
星星重行行
javajava开发语言
编程规约(一)命名风格1.【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。反例:_name/$Object/name$/Object$2.【强制】代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式也要避免采用。正例:alibaba/taobao/youku/hang
- Python学习——qrcode库使用
爬虫俗手小马达
python学习开发语言
qrcode是一个用于生成二维码的Python库,功能简单易用,支持生成多种类型和大小的二维码图像。它可以将文本、URL或其他数据编码为二维码,并输出为图像格式,如PNG或JPEG。安装pipinstallqrcode[pil]([pil]可选,推荐安装以支持图像处理。)核心功能1.生成简单二维码importqrcode#创建二维码data="https://example.com"qr=qrco
- 编码二进制表示
森焱森
c语言网络架构算法
在单片机编程中,使用C语言表示二进制数通常有以下几种方式:1.使用二进制常量(部分编译器支持)一些现代的C语言编译器(如GCC)支持二进制常量的直接表示。例如:unsignedintbinary_number=0b10101010;//二进制表示•0b或0B是二进制前缀,表示后面的数字是二进制格式。•这种方式非常直观,但在某些编译器中可能不支持。2.使用十六进制或八进制表示如果编译器不支持二进制常
- C++-模板初阶
·前路漫漫亦灿灿
c++算法数据结构
一、目标1.泛型编程2.函数模板3.类模板二、对目标的介绍1.泛型编程下面有一个问题:如何实现一个通用的交换函数呢?首先我们想到了可以用学过的函数重载。如下代码:voidSwap(int&left,int&right){inttemp=left;left=right;right=temp;}voidSwap(double&left,double&right){doubletemp=left;lef
- string模拟实现-C++
·前路漫漫亦灿灿
c++开发语言
一、目标string函数是C++中常用的库函数,在string中有许多操作函数,对于一些常用的操作函数,我们可以自己模拟实现一下。实现的操作有:迭代器构造函数拷贝构造函数析构函数赋值运算符重载c_str()size()[]运算符重载reserve(size_tn)resize(size_tn)push_back(charch)append(constchar*str)+=运算符重载insert(s
- 运维知识:如何让你的服务器达到最大化的加载速度和更稳定的运行?
浩特-ht
运维服务器linux
运维知识:如何让你的服务器达到最大化的加载速度和更稳定的运行?一、为什么需要服务器优化?性能问题:慢加载速度导致用户流失(Google数据:页面加载延迟1秒,转化率下降20%)。稳定性问题:硬件故障、资源耗尽、服务崩溃可能导致业务中断。目标:通过系统级优化、服务调优、监控预警实现QPS提升30%+和全年99.99%可用性。二、服务器优化核心维度系统层内核参数资源管理服务层Web服务器数据库网络层C
- 【websocket】socket.io 例子:chat服务
等风来不如迎风去
网络服务入门与实战socket.io
基于socket.io快速实现一个实时通讯应用看起来是一篇超牛的文章。Socket.IOChatAsimplechatdemoforSocket.IOHowtouse$npmi$npmstartAndpointyourbrowsertohttp://localhost:3000.Optionally,specifyaportbysupplyingthePORTenvvariable.Feature
- CHES2024 issue-2文章总结
打工小熊猫
密码学文献分类总结arm开发同态加密密码学网络攻击模型系统安全
来源:https://ches.iacr.org/2024/acceptedpapers.php简要分类:分类文章编号后量子密码软硬件加速相关1、2、5、7、8、9、11、15侧信道攻防相关3、6、10、12、13、26、27、28、30同态相关17、221.RevisitingKeccakandDilithiumImplementationsonARMv7-MJunhaoHuang,Alexan
- LangChain教程 - RAG - PDF解析
花千树-010
LangChainlangchainpdfpythonAIGC
系列文章索引LangChain教程-系列文章在现代人工智能和自然语言处理(NLP)应用中,处理PDF文档是一项常见且重要的任务。由于PDF格式的复杂性,包含文本、图像、表格等多种内容结构,高效、准确地解析PDF需要强大的工具支持。LangChain提供了一套完善的PDF加载器(PDFLoader),支持从纯文本提取到复杂文档解析,并集成了OCR(光学字符识别)功能,能够处理扫描版PDF或包含嵌入图
- Java函数式编程:Stream API(3)
双囍菜菜
Javajavapythonwindows
StreamAPI:像流水线一样处理数据文章目录StreamAPI:像流水线一样处理数据一、从"手工作坊"到"智能工厂"——数据处理方式的进化二、组装流水线的五个关键步骤2.1创建流水线(创建Stream)2.2筛选原料(filter)2.3加工零件(map)2.4分拣排序(sorted)2.5打包出货(collect)三、流水线的秘密武器——延迟执行四、新手常见误区4.1重复使用流4.2忽视空值
- chatgpt赋能python:Python生成二维码教程
axuhsssssco
ChatGptchatgpt人工智能计算机
Python生成二维码教程二维码是现代信息社会中的常用工具,可以快速传递数字信息,广泛应用于各个领域。Python作为一门流行的编程语言,也提供了生成二维码的便捷工具。本篇文章将介绍如何使用Python生成二维码。准备工作在开始生成二维码之前,需要安装Python第三方库“qrcode”。可以通过以下命令安装:pipinstallqrcode生成简单的二维码首先,我们需要导入qrcode库,并使用
- 【python入门】如何生成和安装requirements.txt依赖?
青禾tester
Python基础学习-入门pythonpiprequirements程序人生经验分享
1、生成requirements.txt文件(1)本地环境所有三方库pip3freeze>requirements.txt生成后,打开文件requirements.txt,本地所有依赖都自动添加到文件里(可以视项目需要删减)absl-py==0.9.0allure-pytest==2.6.2allure-python-commons==2.6.2atlassian-python-api==1.17
- 【python安装requirements.txt文件】
我怕天上少了一颗星
python项目python
安装requirements.txt方法一般requirements.txt文件都在代码根目录下面,因此可以按照下述办法安装requirements.txt。1.cd到相应代码根目录2.pipinstall-rrequirements.txt也可以使用清华源:参考文章
- 神奇的零知识证明是什么?
BlockOne11
区块链
1985年,零知识证明(ZKP)的原始概念出现在一篇同行评审的学术论文中,题为“交互式证明系统的知识复杂性”,标志着密码学的突破。研究人员ShafiGoldwasser、SilvioMicali和CharlesRackoff探索了是否有可能在不透露数据本身以外的任何信息的情况下证明数据有效。近40年后,ZKP已成为许多区块链的基本组成部分,通过增强隐私和安全性为用户提供支持。什么是零知识证明?(Z
- 采用Java实现下载图片、pdf加水印
百事老饼干
pdfjava
需求:点击下载---》弹窗加入水印(可加可不加,加上就有水印,没有不加水印),点击之后下载文件处理思路及流程前端:用户点击下载→收集水印参数→调用后端API→处理响应为Blob→触发文件下载后端:接收请求→验证权限→从Minio获取文件→判断文件类型→添加水印→返回处理后的文件流前端下载文件并添加水印importaxiosfrom'axios';constdownloadFileWithWater
- HarmonyOS NEXT AI基础视觉服务-背景替换
harmonyos-next
案例描述这是一个基于AI基础视觉服务实现的背景替换案例,通过调用设备相册选择图片后对主体进行智能分割,并支持动态更换背景颜色。实现步骤:1.模块导入与组件定义import{photoAccessHelper}from'@kit.MediaLibraryKit'import{fileIo}from'@kit.CoreFileKit'importimagefrom'@ohos.multimedia.i
- AArch64架构及其编译器
森焱森
单片机c语言linux架构
—1.关于AArch64架构AArch64是ARMv8-A架构的64位执行状态,支持高性能计算和大内存地址空间。它广泛应用于现代处理器,如苹果的A系列芯片、高通的Snapdragon系列,以及服务器和嵌入式设备。•编译器:可以使用GCC、Clang等编译器编译AArch64代码。例如:bashclang-targetaarch64-linux-gnu-ooutputinput.c这条命令使用Cla
- 强大的销售团队背后 竟然是大数据分析的身影
蓝儿唯美
数据分析
Mark Roberge是HubSpot的首席财务官,在招聘销售职位时使用了大量数据分析。但是科技并没有挤走直觉。
大家都知道数理学家实际上已经渗透到了各行各业。这些热衷数据的人们通过处理数据理解商业流程的各个方面,以重组弱点,增强优势。
Mark Roberge是美国HubSpot公司的首席财务官,HubSpot公司在构架集客营销现象方面出过一份力——因此他也是一位数理学家。他使用数据分析
- Haproxy+Keepalived高可用双机单活
bylijinnan
负载均衡keepalivedhaproxy高可用
我们的应用MyApp不支持集群,但要求双机单活(两台机器:master和slave):
1.正常情况下,只有master启动MyApp并提供服务
2.当master发生故障时,slave自动启动本机的MyApp,同时虚拟IP漂移至slave,保持对外提供服务的IP和端口不变
F5据说也能满足上面的需求,但F5的通常用法都是双机双活,单活的话还没研究过
服务器资源
10.7
- eclipse编辑器中文乱码问题解决
0624chenhong
eclipse乱码
使用Eclipse编辑文件经常出现中文乱码或者文件中有中文不能保存的问题,Eclipse提供了灵活的设置文件编码格式的选项,我们可以通过设置编码 格式解决乱码问题。在Eclipse可以从几个层面设置编码格式:Workspace、Project、Content Type、File
本文以Eclipse 3.3(英文)为例加以说明:
1. 设置Workspace的编码格式:
Windows-&g
- 基础篇--resources资源
不懂事的小屁孩
android
最近一直在做java开发,偶尔敲点android代码,突然发现有些基础给忘记了,今天用半天时间温顾一下resources的资源。
String.xml 字符串资源 涉及国际化问题
http://www.2cto.com/kf/201302/190394.html
string-array
- 接上篇补上window平台自动上传证书文件的批处理问卷
酷的飞上天空
window
@echo off
: host=服务器证书域名或ip,需要和部署时服务器的域名或ip一致 ou=公司名称, o=公司名称
set host=localhost
set ou=localhost
set o=localhost
set password=123456
set validity=3650
set salias=s
- 企业物联网大潮涌动:如何做好准备?
蓝儿唯美
企业
物联网的可能性也许是无限的。要找出架构师可以做好准备的领域然后利用日益连接的世界。
尽管物联网(IoT)还很新,企业架构师现在也应该为一个连接更加紧密的未来做好计划,而不是跟上闸门被打开后的集成挑战。“问题不在于物联网正在进入哪些领域,而是哪些地方物联网没有在企业推进,” Gartner研究总监Mike Walker说。
Gartner预测到2020年物联网设备安装量将达260亿,这些设备在全
- spring学习——数据库(mybatis持久化框架配置)
a-john
mybatis
Spring提供了一组数据访问框架,集成了多种数据访问技术。无论是JDBC,iBATIS(mybatis)还是Hibernate,Spring都能够帮助消除持久化代码中单调枯燥的数据访问逻辑。可以依赖Spring来处理底层的数据访问。
mybatis是一种Spring持久化框架,要使用mybatis,就要做好相应的配置:
1,配置数据源。有很多数据源可以选择,如:DBCP,JDBC,aliba
- Java静态代理、动态代理实例
aijuans
Java静态代理
采用Java代理模式,代理类通过调用委托类对象的方法,来提供特定的服务。委托类需要实现一个业务接口,代理类返回委托类的实例接口对象。
按照代理类的创建时期,可以分为:静态代理和动态代理。
所谓静态代理: 指程序员创建好代理类,编译时直接生成代理类的字节码文件。
所谓动态代理: 在程序运行时,通过反射机制动态生成代理类。
一、静态代理类实例:
1、Serivce.ja
- Struts1与Struts2的12点区别
asia007
Struts1与Struts2
1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类;Struts 1的一个具体问题是使用抽象类编程而不是接口。Struts 2 Action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能。Struts 2提供一个ActionSupport基类去实现常用的接口。即使Action接口不是必须实现的,只有一个包含execute方法的P
- 初学者要多看看帮助文档 不要用js来写Jquery的代码
百合不是茶
jqueryjs
解析json数据的时候需要将解析的数据写到文本框中, 出现了用js来写Jquery代码的问题;
1, JQuery的赋值 有问题
代码如下: data.username 表示的是: 网易
$("#use
- 经理怎么和员工搞好关系和信任
bijian1013
团队项目管理管理
产品经理应该有坚实的专业基础,这里的基础包括产品方向和产品策略的把握,包括设计,也包括对技术的理解和见识,对运营和市场的敏感,以及良好的沟通和协作能力。换言之,既然是产品经理,整个产品的方方面面都应该能摸得出门道。这也不懂那也不懂,如何让人信服?如何让自己懂?就是不断学习,不仅仅从书本中,更从平时和各种角色的沟通
- 如何为rich:tree不同类型节点设置右键菜单
sunjing
contextMenutreeRichfaces
组合使用target和targetSelector就可以啦,如下: <rich:tree id="ruleTree" value="#{treeAction.ruleTree}" var="node" nodeType="#{node.type}"
selectionChangeListener=&qu
- 【Redis二】Redis2.8.17搭建主从复制环境
bit1129
redis
开始使用Redis2.8.17
Redis第一篇在Redis2.4.5上搭建主从复制环境,对它的主从复制的工作机制,真正的惊呆了。不知道Redis2.8.17的主从复制机制是怎样的,Redis到了2.4.5这个版本,主从复制还做成那样,Impossible is nothing! 本篇把主从复制环境再搭一遍看看效果,这次在Unbuntu上用官方支持的版本。 Ubuntu上安装Red
- JSONObject转换JSON--将Date转换为指定格式
白糖_
JSONObject
项目中,经常会用JSONObject插件将JavaBean或List<JavaBean>转换为JSON格式的字符串,而JavaBean的属性有时候会有java.util.Date这个类型的时间对象,这时JSONObject默认会将Date属性转换成这样的格式:
{"nanos":0,"time":-27076233600000,
- JavaScript语言精粹读书笔记
braveCS
JavaScript
【经典用法】:
//①定义新方法
Function .prototype.method=function(name, func){
this.prototype[name]=func;
return this;
}
//②给Object增加一个create方法,这个方法创建一个使用原对
- 编程之美-找符合条件的整数 用字符串来表示大整数避免溢出
bylijinnan
编程之美
import java.util.LinkedList;
public class FindInteger {
/**
* 编程之美 找符合条件的整数 用字符串来表示大整数避免溢出
* 题目:任意给定一个正整数N,求一个最小的正整数M(M>1),使得N*M的十进制表示形式里只含有1和0
*
* 假设当前正在搜索由0,1组成的K位十进制数
- 读书笔记
chengxuyuancsdn
读书笔记
1、Struts访问资源
2、把静态参数传递给一个动作
3、<result>type属性
4、s:iterator、s:if c:forEach
5、StringBuilder和StringBuffer
6、spring配置拦截器
1、访问资源
(1)通过ServletActionContext对象和实现ServletContextAware,ServletReque
- [通讯与电力]光网城市建设的一些问题
comsci
问题
信号防护的问题,前面已经说过了,这里要说光网交换机与市电保障的关系
我们过去用的ADSL线路,因为是电话线,在小区和街道电力中断的情况下,只要在家里用笔记本电脑+蓄电池,连接ADSL,同样可以上网........
- oracle 空间RESUMABLE
daizj
oracle空间不足RESUMABLE错误挂起
空间RESUMABLE操作 转
Oracle从9i开始引入这个功能,当出现空间不足等相关的错误时,Oracle可以不是马上返回错误信息,并回滚当前的操作,而是将操作挂起,直到挂起时间超过RESUMABLE TIMEOUT,或者空间不足的错误被解决。
这一篇简单介绍空间RESUMABLE的例子。
第一次碰到这个特性是在一次安装9i数据库的过程中,在利用D
- 重构第一次写的线程池
dieslrae
线程池 python
最近没有什么学习欲望,修改之前的线程池的计划一直搁置,这几天比较闲,还是做了一次重构,由之前的2个类拆分为现在的4个类.
1、首先是工作线程类:TaskThread,此类为一个工作线程,用于完成一个工作任务,提供等待(wait),继续(proceed),绑定任务(bindTask)等方法
#!/usr/bin/env python
# -*- coding:utf8 -*-