自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 2.项目背景

实际项目改造,突出技术重点,屏蔽敏感信息。项目主要为构建云平台,实现人、设备基于云平台进行数据的实时交互,并通过平台的数据采集、数据融合能力,为后续的算法训练、场景仿真提供可靠的基础环境。

2024-04-22 14:48:01 94

原创 1.行业背景

最简洁明了的定义:物联网(Internet of Things)是一个基于互联网、传统电信网等信息承载体,让所有能够被独立寻址的普通物理对象实现互联互通的网络。它具有普通对象设备化、自治终端互联化和普适服务智能化3个重要特征。其它定义:物联网指的是将无处不在(Ubiquitous)的末端设备(Devices)和设施(Facilities),包括具备“内在智能”的传感器、移动终端、工业系统、楼控系统、家庭智能设施、视频监控系统等、和“外在使能”(Enabled)的,

2024-04-22 14:40:23 7

原创 数据分片查询方案

什么是数据分片?请自行百度。本文主要讨论的是数据分片后的查询方案。什么?肯定有人纳闷了,查询还需要什么方案?要是这么想就肤浅了。

2024-04-02 13:19:14 121

原创 spring-boot 整合 shardingsphere-jdbc、mybatis-plus 数据分片(文末有彩蛋)

Apache ShardingSphere 是一款分布式的数据库生态系统, 可以将任意数据库转换为分布式数据库,并通过数据分片、弹性伸缩、加密等能力对原有数据库进行增强。Apache ShardingSphere 设计哲学为 Database Plus,旨在构建异构数据库上层的标准和生态。它关注如何充分合理地利用数据库的计算和存储能力,而并非实现一个全新的数据库。它站在数据库的上层视角,关注它们之间的协作多于数据库自身。

2024-04-02 10:45:20 694

原创 spring-boot 整合 mybatis-plus 之数据范围(文末有彩蛋)

首先,大家应该都听说过垂直越权和水平越权?什么没有听过?通过上面描述相信大家已经了解什么是垂直权限和水平权限。两者各有不同,但又有共同点。就是越权访问原本没有权限访问的数据。本文主要讲解并提供数据范围权限的解决方案,希望能给大家带来一些帮助。

2024-03-25 09:43:16 317

原创 spring-boot 国际化 (续)(文末有彩蛋)

Hello 大家好,许久不见,之前的博客中有介绍国际化定义以及 spring-boot静态配置文件的国际化方式。这次会带入一些场景,引发一些新的讨论,并且给出对应的解决方案,或许能给大家带来一些帮助。

2024-03-25 09:36:44 308

原创 spring-boot 整合 netty 不一样的玩法(下)(文末有彩蛋)

固定长度粘包拆包基础类解码器基础类@Slf4j@Resource@Override@[email protected](">>>>>> 链接:{} 已断开,异常信息:{} >>>>>>", ctx.channel().id().asShortText(), cause.getMessage());@Overridelog.warn(">>>>>> 空闲链接:{} 已断开 >>>>>>", ctx.channel().id().asShortText());

2024-03-15 10:10:01 449

原创 spring-boot 整合 netty 不一样的玩法(下)番外

Protobuf,全称为Protocol Buffers,是Google开发的一种轻量级的数据交换格式。它是一种语言无关、平台无关的序列化机制,适用于数据存储和通信协议的定义。Protobuf的主要目标是提供高效的数据序列化和反序列化机制,使得数据在网络传输和存储时更加高效和可靠。

2024-03-15 09:53:15 823

原创 spring-boot 整合 netty 不一样的玩法(中)

多累人啊,没啥意义,都是些没价值的重复性工作,真正的重点应该放在业务数据的处理上(ChannelHandler)通过 @NettyHandler 注解,指定 handler 名称(与上面配置项的 name 对应)、order是加载和执行的顺序,按照实际情况编排。到这里,相信大家对开始的几个问题已经有了答案。3.根据业务的不同,不同协议上报的数据,处理的 ChannelHandler 也不同,有的甚至有多个 ChannelHandler。没错,就是一个列表配置,其中要注意的是 name,下面步骤会用到。

2024-03-08 11:30:36 418

原创 spring-boot 整合 netty 不一样的玩法(上)

这里就不介绍 Netty 了,新手或没有接触过 Netty 的同学可以自行百度(网上新手教程一大堆)。接下来的内容有一些难度,需要有一定的基础才能更好的了解和掌握。

2024-03-08 09:40:38 364

原创 spring-boot 扩展 statemachine 状态机(文末有彩蛋)

状态机全称有限状态机,因为一般的状态机的状态都是离散而且可枚举的,这就是有限的原因。状态机表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。通俗的描述状态机就是定义了一套状态変更的流程:状态机包含一个状态集合,定义当状态机处于某一个状态的时候它所能接收的事件以及可执行的行为,执行完成后,状态机所处的状态变化可以被感知。状态事件 状态机的状态变更肯定是通过触发一个事件引起的行为 触发了之后执行的业务逻辑。比如说订单未支付状态到支付状态的变更需要走的业务,写流水、修改账户余额等。

2024-03-01 17:39:37 391

原创 spring-boot 整合 spring-boot-starter-validation 参数校验(文末有彩蛋)

Spring Validation 验证框架对参数的验证机制提供了 @Validated(Spring’s JSR-303 规范,是标准 JSR-303 的一个变种),javax 提供了 @Valid(标准 JSR-303 规范),配合 BindingResult 可以直接提供参数验证结果。其中对于字段的特定验证注解比如 @NotNull 等网上到处都有,这里不详述校验 Controller 的入参是否符合规范时,使用 @Validated 或者 @Valid 在基本验证功能上没有太多区别。

2024-03-01 17:35:20 900

原创 spring-boot 国际化 (文末有彩蛋)

国际化(Internationalization 简称 I18n,其中“I”和“n”分别为首末字符,18 则为中间的字符数)是指软件开发时应该具备支持多种语言和地区的功能。在 Spring 项目中实现国际化,通常需要以下 3 步:1.创建国际化资源(配置)文件2.使用 ResourceBundleMessageSource 配置指定资源文件3.获取国际化内容。

2024-02-29 16:47:42 331

原创 spring-boot 整合 spring-boot-starter-batch 数据批处理(文末有彩蛋)

Spring Batch 作为 Spring 的子项目,是一款基于 Spring 的企业批处理框架。通过它可以构建出健壮的企业批处理应用。不仅提供了统一的读写接口、丰富的任务处理方式、灵活的事务管理及并发处理,同时还支持日志、监控、任务重启与跳过等特性,大大简化了批处理应用开发,将开发人员从复杂的任务配置管理过程中解放出来,使他们可以更多地去关注核心的业务处理过程。

2024-02-29 16:16:34 1181

原创 数据加密存储

SSL加密是一种基于公钥加密和对称加密相结合的加密方式。SSL加密通过使用公钥加密对称密钥,然后使用对称密钥加密数据,从而保证了数据的安全性。TDE加密是一种在存储层面对数据库进行加密的方式。TDE加密可以保证数据在磁盘上的安全性,即使磁盘被盗或者数据被窃取,也无法读取数据。对称加密是最常见的加密方式之一,也是最简单的加密方式之一。对称加密的特点 是加密和解密使用相同的密钥。数据库加密技术可以加密整个数据库或仅加密敏感数据的列。归根结底就是对存储的数据加密,针对加密对象、加密方式有所不同。

2023-11-03 13:07:17 217

原创 图像的转换处理

图像转换图像转换图像转换 18年的项目,关于图像的处理,当时非常痛苦, 没有一个完美的兼容工具类,且第三方库资源匮乏, 国内所有能找的资源都找遍了也没有什么好方法。 最后翻墙找到几个第三方库,自己研究了下,整了工具类。 在此记录下,方便以后解决同类问题,也方便他人使用。 废话不多说,直接上地址。 链接: https://pan.baidu.com/s/1Yc3Up6w31n1byif1LoBu-Q 提取码: fe3o ...

2021-09-13 17:13:15 98

原创 大文件快速压缩打包

大文件快速压缩打包使用 commons-compress 实现可控多线程快速压缩使用 commons-compress 实现可控多线程快速压缩项目中解决的问题,在此记录下来。Java自带压缩和市面上搜到的其他方法均不能满足需求,简单的说就是慢,每次都是大批量至少2G的文件压缩打包,一般方法优化到极致2G也要30秒的样子,找了一圈最后找到 Apache 开源的 commons-compress。commons-compress 实现的 ZipArchiveEntry 效率足够高,但会使用当前服务

2021-09-10 17:18:24 514

原创 Spring Boot+Spring Security+Mybatis-plus+jwt+redis 通用后台管理

touch-spring-template简介打造一个简洁、易扩展的开发脚手架。代码结构清晰,遵循低耦合高内聚设计思想。各模块之间灵活搭配,即插即用。丰富的代码注释、便于阅读及二次开发。功能系统管理:用户管理、角色管理、菜单管理、部门管理、字典管理、资源管理、租户管理系统监控:系统日志、访问日志、在线用户、定时任务、DB监控系统工具:接口文档、代码生成、表单设计流程管理:流程模型、流程定义、用户分组、流程用户技术选型核心框架:Spring Boot 2.2.0

2020-10-26 21:48:57 620 2

原创 Mysql 的性能优化总结

**Mysql 的性能优化**1.   目标了解什么是优化掌握优化查询的方法掌握优化数据库结构的方法掌握优化MySQL服务器的方法2.   什么是优化?合理安排资源、调整系统参数使MySQL运行更快、更节省资源。优化是多方面的,包括查询、更新、服务器等。原则:减少系统瓶颈,减少资源占用,增加系统的反应速度。3.   数据库性能参数使用SHOW STATUS语句查看MySQL数据库的性能参数SHOW STATU

2020-10-14 16:38:26 95

原创 jvm性能调优总结

性能监控与调优JVM内存结构堆区:{Young[(s0+s1)+Eden] + Old}非堆区:{Metaspace[CCS + CodeCache]}垃圾回收算法 枚举根节点,做可达性分析 根节点:类加载器、Thread、虚拟机栈的本地变量表、static成员、常量引用、本地方法栈的变量等等 回收算法:1.标记清除:分为“标记”和“清除”两个阶段,首先标记出所有需要回收等对象,在完成标记后统一回收。 缺点:效率不高。会产生碎片...

2020-10-07 10:50:24 199

原创 高并发、多线程

高并发、多线程开发总结一、线程池1.线程池介绍我这里理解为计划调度,复用总量相对固定的资源,合理分配完成任务.2.创建、停止线程池线程池构造函数的参数参数名类型含义corePoolSizeint核心线程数maxPoolSizeint最大线程数keepAliveTimelong保持存活时间workQueueBlockingQueue任务存储队列threadFactoryThreadFactory线程池需要新线程时,由threadFa

2020-10-05 12:39:18 177

敏捷型项目管理学习资料

敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

2018-09-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除