- 博客(151)
- 资源 (28)
- 收藏
- 关注
原创 物联网架构实例—框架设计
无论是终端接入还是第三方云厂家IOT服务的数据接入都进行了统一化处理与终端鉴权,最后通过WEBAPI与推送服务套件将数据统一输出给第三方平台。目前对此架构进行单机压测,在一台4核8G,10M带宽的情况下终端长链接在25000个,并发数量量在5500条/秒左右。主要使用的技术路线是:SpringBoot+Netty+RabbitMQ+Redis+MongoDB+MySQL+OBS。后续我会将此框架使用的一些套件以及压测工具和一些过程中遇到的问题记录下来,也方便自己后续温故而知新。
2022-12-15 18:08:30 690
原创 Windows Server 生成带私钥的证书请求
选择“个人”下面的“证书”,右键选择“所有任务”,然后选择“高级操作”,找到“创建自定义请求”随后弹出“证书注册”界面然后点击“下一步”。选择“自定义请求”下面的“不使用注册策略继续”使用默认项,继续点击“下一步”点击“详细信息”,点击“属性”在属性里面设置参数在使用者属性栏添加使用者的信息最后在私钥属性找到需要配置的私钥信息点击“应用”即可所有属性都已经配置后,点击“确定”会弹出文件存储选择最后会得到一个自定义请求文件,随后即可用此文件生成对应的证书。
2022-09-05 17:25:03 1271
原创 Python 基于OpenCV+face_recognition+tkinter实现人脸特征监测
安装好依赖包opencv-python、face-recognition、tkinter。由于python3以上版本已经将tkinter内置到环境,所以这里不需要单独安装依赖。
2022-09-02 17:26:25 1447
原创 Python 基于OpenCV+face_recognition实现人脸捕捉与人脸识别(照片对比)
与上篇通过摄像头动态识别人脸一样,先下载好opencv-python、face-recognition,这里因为使用的是照片对比的方式,特意使用tkinter画了一个简单的GUI方便操作。在python 3以上版本tkinter是环境自带的,所以这里不需要安装。...
2022-08-31 18:27:48 15117 12
原创 Python 基于OpenCV+face_recognition实现人脸捕捉与人脸识别
如果安装face_recognition过程中报错,提示:“CMake must be installed to build the following extensions: dlib”,则需要安装CMakecmake安装成功后再安装face_recognition如果使用的是Microsoft Visual Studio ,则可以直接在项目目录下的Python环境上右键,选择Install Python Package... 安装对应的开发包。...
2022-08-31 09:38:09 1564
原创 C#WebApi寄宿在一个窗口应用程序
在我们开发应用程序的过程中,应用程序之间往往是需要相互之间进行通讯的,即便是一个窗口应用程序或者Winform应用程序。如何简单的将两个应用程序之间进行数据传递,我们目前通常的做法就是使用WebAPI、WebService、RPC等对外提供接口。我们这里的做法就是如何将WEBAPI寄宿在C#的窗口应用程序中。
2022-03-29 16:53:14 2801
原创 基于Netty的UDP服务端开发
1.前言之前基于Netty做了一套TCP与MQTT的服务端,随着系统接入的终端类型越来越多,出现了UDP通讯的设备,虽然这样的设备并非主流,而且通讯机制存在问题,为了考虑系统的兼容性,只能将整套服务做全。2.UDP通讯优缺点UDP 是一种面向非连接的协议,面向非连接指的是在正式通信前不必与对方先建立连接,不管对方状态就直接发送数据。至于对方是否可以接收到这些数据,UDP 协议无法控制,所以说 UDP 是一种不可靠的协议。UDP 协议适用于一次只传送少量数据、对可靠性要求不高的应用环境。与
2022-03-25 09:32:42 1762
原创 流媒体开发—H.264/H.265裸流文件推流
之前开发过基于JT/T1078开发了一套流媒体服务,随着细分业务的延伸与客户的需求,希望我们能直接对H.264/H.265裸流文件通过rtmp/rtsp的方式进行推流与拉流。在对流媒体进行改造之后,我们采用ffmpeg进行推流,使用VLC进行拉流验证,过程如下。1.安装ffmpeg我这边使用的Windows环境进行验证1.1.下载ffmpeg下载安装包:https://github.com/BtbN/FFmpeg-Builds/releases我安装的是:ffmpeg-n4.
2022-02-10 15:40:02 2804 1
原创 C# 实现国密SM4加解密封装
1.Portable.BouncyCastle 引入右键解决方案的引用,选择管理NuGet程序包在浏览的搜索框中搜索:“Portable.BouncyCastle”选择第一个,在右侧点击安装即可完成程序包的引入。2.SM42.1.SM4Contextpublic class SM4Context { public int mode; public long[] sk; public bool isPadding..
2021-12-28 14:32:41 3166 5
原创 C# 实现国密SM3加解密封装
1.Portable.BouncyCastle 引入右键解决方案的引用,选择管理NuGet程序包在浏览的搜索框中搜索:“Portable.BouncyCastle”选择第一个,在右侧点击安装即可完成程序包的引入。2.SM32.1.公共方法 public class SupportClass { /// <summary> /// Performs an unsigned bitwise right shift with..
2021-12-28 14:26:13 7162 3
原创 C# 实现国密SM2加解密封装
1.Portable.BouncyCastle 引入右键解决方案的引用,选择管理NuGet程序包在浏览的搜索框中搜索:“Portable.BouncyCastle”选择第一个,在右侧点击安装即可完成程序包的引入。2.SM22.1.密码计算 /// <summary> /// 密码计算 /// </summary> public class Cipher { private int ct = 1..
2021-12-28 14:21:06 3519
原创 SpringBoot 集成MongoDB实现高并发存储
1.导入包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>2.封装DBHelper类package com.gnss.logserver
2021-12-24 11:24:20 1572
转载 快速为网站添加暗黑模式(DarkMode.js)
1.Add a dark-mode / night-mode to your website in a few secondsThis library uses the cssmix-blend-modein order to bring Dark-mode to any of your websites. Just copy paste the snippet and you will get a widget to turn on and off the dark-mode. You can a..
2021-12-11 16:19:23 1212
原创 Windows 环境安装MongoDB
1.版本选择登录MongoDB官网:MongoDB Community Download | MongoDB选择MongoDB Community Server,选择Windows环境如果我们的服务器是Windows Server 2008R2 或者Windows 7环境,则选择否则会提示版本不支持2.Windows 7安装示例双击.msi文件点击Next继续点击Next这一步最好选择Custom,自定义安装目录以及数据、日志存储目录...
2021-12-11 15:26:24 5455
原创 Netty 实现高并发通讯原理理解
最近写了很多关于Netty应用级别的文章,针对为什么选择Netty来实现高并发通讯,Netty实现高并发通讯的原理是什么?今天有时间把我对Netty的一些理解做个简单的说明,如有不对欢迎指正与探讨。
2021-12-07 17:24:08 2151
原创 Netty ByteBuf 按位读操作
前言最近与一个刚接触Netty的学生关于Netty读字节流方面的操作进行讲解,可能对后来同学有点点帮助,所以整理出来供大家探讨。ByteBuf读操作 ByteBuf读操作我们常用的有一下几种:ByteBuf.readByte() 读一个字节,有符号ByteBuf.readUnsignedByte() 读一个字节,无符号 ByteBuf.readShort()读连续的两个字节,有符号ByteBuf....
2021-11-25 10:52:19 5588
原创 物联网组网技术优缺点对比:蓝牙、LoRa、wifi、NB-IoT、ZigBee等
1.前言最近对物联网产品自组网技术选型,找到合适的组网技术,让产品自行组网并完成数据的传输。2.参数对比
2021-11-01 14:39:45 35405 1
原创 Netty数据处理:拆包、组包实现
1.前言 最近一直找第三方产品对接,目前已经集成了40多款产品和20多种传感器,实现了不同协议下的针对粘包、半包数据的拆包、组包处理。2.为什么会出现粘包与半包数据 TCP通讯在物联网数据通讯中,目前仍然占据着绝大部分的市场,相比UDP来说,它更加可靠。因为TCP通讯是以二进制流的方式进行,中间是没有间隙的,如果数据传输频率过快则会出现粘包现象。在Netty机制里,传输的数据是存储在ByteBuf中,当我们在接收数据的时候,有可能会一次读取多个包的数据,也可能数据包长...
2021-10-30 16:35:27 4853
原创 C# 单例模式封装一个打印WebApi日志的类
1.前言 这里主要说明一下为什么日志类使用单例模式,首先我们先了解一下单例模式。单例模式:创建的类在当前进程中只能有一个实例。用在写日志主要是防止在多线程写日志的时候防止对文件操作出现访问冲突的现象。2.操作封装public class Log { private static Log _instance = null; private static readonly object syncObject = new object(); ...
2021-10-30 15:31:16 866
原创 C#接入阿里云ECSAPI实现系统服务器运维
1.前言最近在做服务的运维,之前有说过如何对服务器上的程序进程进行管理,参考《C#对接supervisor XML-RPC API 实现进程控制》,今天说一下如何对接阿里云的ECS实现系统对服务器的控制,完善系统自运维的服务。2.阿里云SDK的对接2.1.添加SDK包在NuGet的面板找到AlibabaCloud的程序库,进行安装2.2.实现一个SDK对接的封装类public class AlibabaCloudSDK { /** .
2021-10-30 14:45:10 1505
原创 基于SpringBoot整合Netty开发MQTT服务端
Netty认知Netty是一款基于NIO(Nonblocking I/O,非阻塞IO)开发的网络通信框架,相比传统Socket,在并发性方面有着很大的提升。关于NIO,BIO,AIO之间的区别,可以参考这篇博客:NIO 、 BIO与AIO之间的区别_谁念西风独自凉-CSDN博客MQTT服务端实现首先我们启动一个tcp服务,这里我用到了Redis与RabbitMQ,主要是与分布式WEB平台之间好对接@Componentpublic class ApplicationEventList.
2021-10-21 14:58:08 9375 12
转载 IIS回收情况说明
版权声明:本文为starfd原创文章,未经博主允许不得转载。http://blog.csdn.net/starfd/article/details/53641413本文内容基于win7的IIS7.5,该篇内容主要说明什么情况会导致IIS进行回收,以便于当出现回收问题时快速定位问题通过控制面板下的管理工具,可以打开Internet 信息服务(IIS)管理器,打开后界面大致如下:通过选择“应用程序...
2021-10-19 11:55:47 848
原创 Python 爬虫系列:爬取全球船公司信息
前言 上一篇blog已经说明如何分析网站上的元素,详情参考:Python 爬虫系列:爬取全球机场信息,这次我们爬取全球各大船公司信息,并存储到SQL Server数据库中。源码#coding=UTF-8 import requestsfrom bs4 import BeautifulSoupimport reimport loggingimport pymssqlimport uuid#此处修改为你自己的数据库server = "127.0.0.1"user ...
2021-10-19 09:55:36 1811
原创 Python 爬虫系列:爬取全球机场信息
前言最近公司需要全球机场信息,用来做一些数据分析。刚好发现有个网站上有这个信息,只是没有机场的经纬度信息,不过有了机场信息,经纬度信息到时候我们自己补上去就行网站元素分析 我们找到了有这些信息的网站,下一步我们就可以通过网站元素分析我们想要的信息在哪里。 首先我们打开网站,按“F12”,就可以在通过浏览器的开发工具查看网站所有的元素信息。当我们鼠标在这些div上移动的时候,网页上就会将该div对应的展示块加上阴影,所以我们很快就能获取到我们...
2021-10-18 18:25:31 3424
原创 经纬度坐标系之间相互转化工具(百度与WGS84、百度与国测局、国测局与WGS)
1.前言刚刚想从百度坐标拾取工具里面找到一些地点的经纬度,存储到系统中使用,由于百度拾取系统给到的是百度(BD-09)坐标系统,系统统一用到的是WGS-84,所以需要进行一次转换,本来想从网上下载一个,结果花了仅剩不多的49积分,下载到了一个用起来很不方便,而且还报错的东西下来,真TM好气!所以无奈自己编写一个提供给大家使用!2.实现2.1.语言及框架说明我这边是基于C#语言开发的winform桌面应用程序,使用的是.NET Framework 4.6.12.2.经纬度坐标系统转换类
2021-09-26 16:04:09 4914
转载 NIO 、 BIO与AIO之间的区别
1 . BIO,NIO,AIO都有什么区别1.1. BIOBIO:传统的网络通讯模型,就是BIO,同步阻塞IO, 其实就是服务端创建一个ServerSocket, 然后就是客户端用一个Socket去连接服务端的那个ServerSocket, ServerSocket接收到了一个的连接请求就创建一个Socket和一个线程去跟那个Socket进行通讯。接着客户端和服务端就进行阻塞式的通信,客户端发送一个请求,服务端Socket进行处理后返回响应,在响应返回前,客户端那边就阻塞等待,什么事情也做不了。 这
2021-09-16 09:44:34 1202
原创 .NET 导出报告到PDF
1.错误的实现方式最初的时候我采用Spire.PDF将生成的word(如果导出报告到word可以查看这篇blog《.NET 利用NPOI导出报告到Word》)转成PDF,首先发现Spire.PDF是商用付费的组件,如果不购买的话会存在水印,不好清除掉。其次,如果数据量比较大,导出到word的时候本身已经用了比较长的时间了,再对word转PDF的时候,又是一个耗时的动作,所以果断抛弃了这个投机取巧的方式.2.方案选型之前让一个毕业没多久的小朋友,使用过iTextSharp实现过导出报
2021-09-15 11:55:57 2941 2
原创 .NET 利用NPOI导出报告到Word
1. 使用GuGet引入NPOI包搜素NPOI,然后点击右边的安装即可,因为我这边安装过了,所以出现了卸载与更新,因为有了新的稳定版本所以出现了更新。2.导出DataTable到Word/// <summary> /// 导出文件到Word /// </summary> /// <param name="dataTable">数据集</param> /// <para.
2021-09-13 11:05:59 1890
原创 MySQL 学习笔记
1.mysql遇见Expression #1 of SELECT list is not in GROUP BY clause and contains nonag(去掉only_full_group_by)查询MySQL版本与sqlmode:select version(), @@sql_mode;修改sqlmode,执行下面两句代码:set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_
2021-09-11 11:31:08 1316
原创 川标主动安全协议解析说明(T/SCSDX 0002-2021)
随着主动安全智能防控系统的推进,各个省市逐渐出现了地标主动安全智能防控系统,前端时间处理完粤标(广东省的道路运输车辆智能视频监控报警系统通讯协议,详情参考:https://blog.csdn.net/qq_17486399/article/details/115911316),又迎来了最新的川标(四川省的道路运输车辆主动安全智能防控系统技术规范),川标与粤标都是依赖于JT/T 808-2019,所以同样的,在终端手机号字节数进行了加长,由原来的6个字节拓展到了10个字节,可以通过消息头里面的版本标识进行区分
2021-09-09 16:45:28 1711
原创 车联网数据解析常用方法集Java (持续更新)
1. 经纬度经伟度的度分秒的换算关系如下: ①换算关系 :1度=60分;1分=60秒;②换算举例 :一般情况下,换算原理是这样的:把度的数值中的小数点的转换成为分,取分之整数,再把分的小数转换成为秒。 举例说明:例如:31.87654度 把数值度的小数点以后的数字乘以60分/度 :0.87654*60=52.5924分 把数值分的小数点以后的数字乘以60秒/分 :0.5924*60=35.554秒 合计:31度52分35.554秒1.1..
2021-09-09 15:59:19 1394 1
原创 C# 实现二维码详解
二维码是什么二维码 QR Code,全称为:Quick Response Code,最早用于日本汽车制造业追踪零部件。QR现有40个标准版本,4个微型版本。相比一维码(也就是我们目前还在常用的条码),拥有更高密度的编码,可存储的信息量更大。一维码只能存储字母和数字,二维码可容纳多达1850个大写字母或者2710个数字或者1108个字符或者500多个汉字,比条码存储量多了几十倍。另外,二维码可以把图片、声音、文字、等可以数字化的信息进行编码。除此之外:二维码比一维码译码错误率要低得多(误码率不超过千分
2021-09-06 10:36:04 5725
原创 C#对接supervisor XML-RPC API 实现进程控制
前言最近在考虑如何实现平台的自动化运维监控,就是将系统的服务器、以及在服务器上运行的程序应用通过平台自行监控起来。在此之前,有用过supervisor,并且使用了supervisor自带的web也能实现对程序的监控,具体实现可以查看我之前的博客,但是自带的那个web界面风格太过于简陋,对于目前这个看颜的时代明显不太符合要求。还好supervisor自带了XML-RPC接口,让我们实现通过自己的Web平台实现程序的自行监控变得简单起来。...
2021-09-01 23:43:37 1332 2
原创 Java SpringBoot集成阿里云短信与邮件服务
1.pom.xml导入jar包 <!--阿里云短信 --> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.1.0</version>
2021-07-23 09:54:07 3146 3
原创 Java SpringBoot集成微信告警推送服务
一.申请微信告警模板登录微信公众号平台,在服务里面找到模板消息我们点击从模板库中添加一个模板消息可以通过关键字搜索告警模板,点击详情可以查看该模板的详情与示例,判断该模板是否试用与我们。最后找到合适的模板点击添加即可完成模板消息的创建。二.封装微信推送方法微信推送中用到了两个微信方法其一:获取access_token,请求方式未get,接口地址:https://api.weixin.qq.com/cgi-bin/token?grant_type=clien...
2021-07-21 16:28:12 3264 6
原创 Java cxf集成第三方WebService接口
一、pom引入 <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxws</artifactId> <version>3.1.10</version> </dependency> <
2021-07-21 11:18:04 2979 2
原创 Java(SpringBoot2.x)使用POI导入数据到Excel
一、前言最近做一个推送服务将系统某些报表,通过邮件附件的形式推送给指定的人,首先我们需要在服务端生成报表的excel文档。生成excel文档采用的是POI的方式。二、pom引入相应的jar包引入三个poi相关的jar包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId>
2021-07-20 13:58:14 2375
转载 Java中能否利用函数参数来返回值
我们在写代码时通常会遇到一种情况,就是我们可能希望在一个函数操作完成后返回两个值,这两个值互不关联并且不希望以数组的形式返回,甚至这两个返回值都不属于同一种类型,这种情况下在C或C++中可以轻易的使用一个引用的参数来将想要返回的值作为参数传入函数,等函数执行完毕后就可以得到你想要的“返回值”了。但是这种情况在Java中可能就没有那么轻易了,我们知道Java语言最大的一项改变就是隐藏了类似C或C++中的指针操作,这给开发者带来了极大的好处,开始时不用在为调皮的指针头疼了,但是同样的,在某些场景下也会产生某些
2021-07-20 11:31:51 618 1
原创 .collect(Collectors.toList())报java.lang.NullPointerException错误
java.lang.NullPointerException为空指针错误,原因出在Collectors.toList()时候里面有null值导致的。知道大概的方向后,我就想应该是被查询的List里面包含了null值,所以对程序进行Debug,发现被查询的List在Debug视图里面出现了“Not showing null elements”看来是印证了我的才行,因此对被查询的List进行过滤。过滤null值后的List就没再出现“Not showing null elements”程序.
2021-07-19 16:33:40 7654
CoordinateConversion.rar
2021-09-26
360Security.rar
2021-05-26
Blogs 1.5[新增 站内搜索、文章阅读量统计、评论量统计].rar
2020-07-21
osm2pgsql.zip
2020-07-21
全球港口信息数据.csv
2020-06-23
Python爬取世界港口数据
2019-08-19
C#甘特图实现
2015-12-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人