自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhuzj12345的博客

zhuzj12345的博客

  • 博客(300)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 物联网设备终端和云端系统如何通讯?

随着5G通讯的诞生,网络通讯速度更快,周围从事互联网行业的同事都说下一个风口可能是物联网。由于目前公司产品偏硬件,我也有幸接触了一些物联网的知识,这篇文章想给大家分享一下关于物联网产品中的终端设备和软件是如何进行通讯的。什么是物联网产品众所周知,物联网是由数以百万计的设备通过网络相互连接而成的网络。物联网是一种将硬件和软件结合起来的产品,它可以测量真实世界的信息。并连接到网络,为用户提供价...

2019-08-23 10:45:04 9307 2

转载 Java接口幂等性设计场景解决方案v1.0

java 幂等性 接口

2023-07-21 15:16:14 412

原创 nginx代理websocket相关配置

nginx websocket

2023-07-06 10:05:11 896

原创 centos7 后台执行命令

在终端或控制台工作时,可能不希望由于运行一个作业而占住屏幕,因为可能还有更重要的事情要做,比如阅读电子邮件。对于密集访问磁盘的进程,更希望它能够在每天的非负荷高峰时间段运行(例如凌晨)。为了使这些进程能够在后台运行,有几种选择方法可供使用。当在前台运行某个作业时,终端被该作业占据;可以在命令后面加上& 实现后台运行。例如:sh test.sh &适合在后台运行的命令有f i n d、费时的排序及一些s h e l l脚本。在后台运行作业时要当心:需要用户交互的命令不要放在后台执行。

2023-06-27 13:42:55 2181

原创 物联网卡常见问题FAQ

物联网卡

2022-12-02 09:33:20 608 1

转载 jconsole的设置及远程连接linux服务器上的springboot项目

jconsole,linux,springboot

2022-07-28 10:23:27 1760

转载 Java 应用线上问题排查思路、常用工具小结

前言本文总结了一些常见的线上应急现象和对应排查步骤和工具。分享的主要目的是想让对线上问题接触少的同学有个预先认知,免得在遇到实际问题时手忙脚乱。毕竟作者自己也是从手忙脚乱时走过来的。只不过这里先提示一下。在线上应急过程中要记住,只有一个总体目标:尽快恢复服务,消除影响。 不管处于应急的哪个阶段,我们首先必须想到的是恢复问题,恢复问题不一定能够定位问题,也不一定有完美的解决方案,也许是通过经验判断,也许是预设开关等,但都可能让我们达到快速恢复的目的,然后保留部分现场,再去定位问题、解决问题和复盘。

2021-07-21 09:44:53 520 1

转载 软件外包公司的入职须知

定义软件外包公司(外包服务开发公司)和软件产品公司是两个方向,何为软件外包公司 ?主要是看该公司有没有核心产品,开发人员的主要精力是在升级完善产品,还是在接各种项目,盈利模式是靠不停的接活还是靠卖软件赚钱,当然有基于核心产品做一些定制开发的公司,这种公司也可称之为软件产品公司。外包公司的刻板印象标签 技术差,被歧视 工作时间越久,越没竞争力 使用适当的方法摘掉这些标签才能行走的更畅快 !!!公司类型项目外包主要经济来源就是不同的软件项目,所以能尽快收到钱就是

2021-06-09 09:35:43 340

转载 Centos7 离线安装mysql5.7并设置开机自启

最近需要在Centos7下安装下mysql,直接yum -y install的方法不太好使,就在官网下载了所有的依赖和离线安装包,安装成功,现在记录下流程:首先进入mysql官网的下载地址:https://dev.mysql.com/downloads/mysql/,然后在下载里面把os选择为Red Hat Enterprise Linux 7 / Oracle Linux 7 ,把os的版本选择为all。在下方的下载链接找到以下文件:mysql-community-client-5.7.19-

2021-03-26 11:17:13 453

转载 识破面试官的套路:十个典型的面试问题剖析

明哥通过十个典型面试问题的剖析,抛砖引玉,帮你了解面试官的套路,教你如何在面试中因势利导,自如应对。1你有什么职业规划?无论菜鸟还是老鸟,面试官都会问职业规划,乐此不疲,他想听到的是什么?是你心中的奋斗蓝图?是你未来向往的生活?“今年拿到驾照,明年练出八块腹肌,三年内攒够20万,五年内结婚生子……”面试官想听到的是:你能随着我们公司的发展一起成长!面试官想知道什么尼采说:一个人知道自己为什么而活,就可以忍受任何一种生活。胸中有星辰大海,有诗和远方,才可能自我驱

2021-03-17 08:58:13 758

转载 面试官必问的 25 道 MyBatis 面试题!

什么是 Mybatis? MyBatis 的优点 MyBatis 框架的缺点 MyBatis 框架适用场合 MyBatis 与 Hibernate 有哪些不同? #{}和${}的区别是什么? 当实体类中的属性名和表中的字段名不一样 ,怎么办 ? 模糊查询 like 语句该怎么写? Mapper 接口的工作原理是什么?Mapper 接口里的方法,参数不同时,方法能重载吗? Mybatis 是如何进行分页的?分页插件的..

2021-03-15 09:12:33 188

转载 《互联网人退化简史》

从猿到人,人类的进化经历了复杂又漫长的岁月。但人类退化的过程,往往是速度飞快的。可能是几年、几个月、甚至几周.......比如说刚开工不久,我就发现:互联网人在方方面面,都已经逐渐退化了。如果说人的进化是不断摆脱束缚争得自由的历程,那么人的退化则是不断适应工作获得喘息的动态平衡。我们时刻遵循着“适者生存”的生物法则,不断重塑对工作的预期和结果,与此同时,我们也被工作重塑了。回过头来看,我们究竟是进化还是退化了?或许并不重要。重要

2021-03-12 16:09:10 141

原创 Java排名靠前的工具类你都用过吗?

这篇文章展示了最常用的Java实用工具类及其最常用的方法。 org.apache.commons.io.IOUtils closeQuietly()toString()copy()toByteArray()write()toInputStream()readLines()copyLarge()lineIterator()readFully() org.apache.commons.io.FileUtils deleteDir...

2021-03-03 09:14:57 117

转载 linux系统下的的nohup命令

1.命令简介nohup 的作用可以将程序以忽略挂起信号(SIGHUP)的方式运行。常见的用法是和 & 命令一同使用,将命令放置到后台运行,即使终端挂掉,进程会忽略挂起信号,继续运行。将程序放到后台运行,一般有两种方式:(1)command &:后台运行,关掉终端会停止运行。(2)nohup command &:后台运行,关掉终端也会继续运行。注意:(1)如果使用nohup执行程序未显示进行标准输出重定向,则标准输出默认重定向当前工作目录的 nohup.ou..

2021-02-04 08:37:18 887

原创 Redis 的 8 大数据类型

Redis 的八大数据类型官网可查看命令:http://www.redis.cn/commands.htmlRedis-key127.0.0.1:6379>keys*(emptylistorset)127.0.0.1:6379>setnamexxxOK127.0.0.1:6379>keys*1)"name"127.0.0.1:6379>setage1OK127.0.0.1:6379>keys*1)"age"2)"...

2020-12-16 09:21:53 243

原创 技术人员想成功转型为项目经理,这两点很关键

“学而优则仕,技而优则管”的观念被很多像李伟这样的技术人员所推崇。不少技术人员甚至把“在30岁之前转型为项目经理”当成了自己职业生涯规划中的硬性指标。从技术人员转型项目经理,可不仅仅是换个工作这么简单。这其中不仅需要对项目管理工作有足够的了解,还需要对自身性格和能力有充分的认知和把握,否则盲目转型只会给自己的职业之路徒增坎坷。具体来说,技术人员需要做好两方面的适应。1、性格上的调整技术人员想要成功转型项目经理,首先就要从性格上做好相应的调整。项目管理工作是偏向于与人打交道的外向型工作,.

2020-11-17 17:23:40 926

转载 四连问:API 接口应该如何设计?如何保证安全?如何签名?如何防重?

一:token 简介 二:timestamp 简介 三:sign 简介 四:防止重复提交 五:使用流程 六:示例代码 七:ThreadLocal 说明:在实际的业务中,难免会跟第三方系统进行数据的交互与传递,那么如何保证数据在传输过程中的安全呢(防窃取)?除了https的协议之外,能不能加上通用的一套算法以及规范来保证传输的安全性呢?下面我们就来讨论下常用的一些API设计的安全方法,可能不一定是最好的,有更牛逼的实现方式,但是这篇是我自..

2020-11-11 08:47:17 243

转载 MySQL大表优化方案

当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化:单表优化除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度,一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的。而事实上很多时候MySQL单表的性能依然有不少优化空间,甚至能正常支撑千万级以上的数据量:字段 尽量使用TINYINT、SMALLINT、MEDIUM_INT作为整数类型而非INT,如果非负则加上UNSIGNED VAR

2020-11-09 08:41:55 308 1

转载 数据量很大,分页查询很慢,推荐个优化方案!

当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询。对于数据库分页查询,也有很多种方法和优化的点。下面简单说一下我知道的一些方法。准备工作为了对下面列举的一些优化进行测试,下面针对已有的一张表进行说明。 表名:order_history 描述:某个业务的订单历史表 主要字段:unsigned int id,tinyint(4) int type 字段情况:该表一共37个字段,不包含text等

2020-11-05 17:40:31 150

转载 如何防止MySQL索引失效?

最近一直忙着处理原来老项目遗留的一些 SQL 优化问题,由于当初表的设计以及字段设计的问题,随着业务的增长,出现了大量的慢 SQL ,导致 MySQL 的 CPU 资源飙升,基于此,给大家简单分享下这些比较使用的易于学习和使用的经验。这次的话简单说下如何防止你的索引失效。再说之前我先根据我最近的经验说下我对索引的看法,我觉得并不是所以的表都需要去建立索引,对于一些业务数据,可能量比较大了,查询数据已经有了一点压力,那么最简单、快速的办法就是建立合适的索引,但是有些业务可能表里就没多少数据,或者表的使

2020-09-16 10:26:10 146

转载 使用RabbitMQ实现未支付订单在30分钟后自动过期

延迟队列可以实现消息在投递到Exchange之后,经过一定的时间之后再路由到相应的Queue。最后被消费者监听消费。即:生产者投递的消息经过一段时间之后再被消费者消费。 常见业务场景:订单在30分钟内还未支付则自动取消。 该业务的其他实现方案: 使用Redis,设置过期时间,监听过期事件。 使用RabbitMQ的过期队列与死信队列,设置消息的存活时间,在设置的时间内未被消费,即会投递到死信队列,我们监听死信队列即可。可参考上一篇文章RabbitMQ死信队列在SpringBoot中的

2020-08-31 11:33:35 3054

转载 10w行级别数据的Excel导入优化记录

需求说明项目中有一个 Excel 导入的需求:缴费记录导入由实施 / 用户 将别的系统的数据填入我们系统中的 Excel 模板,应用将文件内容读取、校对、转换之后产生欠费数据、票据、票据详情并存储到数据库中。在我接手之前可能由于之前导入的数据量并不多没有对效率有过高的追求。但是到了 4.0 版本,我预估导入时Excel 行数会是 10w+ 级别,而往数据库插入的数据量是大于 3n 的,也就是说 10w 行的 Excel,则至少向数据库插入 30w 行数据。因此优化原来的导入代码是势在必行的。

2020-07-27 08:24:14 133

原创 explain都不懂,还说会SQL调优?

mysql中的explain命令可以用来查看sql语句是否使用了索引,用了什么索引,有没有做全表扫描。可以帮助我们优化查询语句。explain出来的信息有10列,文章主要介绍type、key、Extra这几个字段。演示中涉及到的表结构如下:CREATETABLE`dept_desc`(`dept_no`char(4)NOTNULL,`dept_name`varchar(40)NOTNULL,`desc`varchar(255)NOTNULL,P...

2020-07-02 09:10:54 160

原创 面试官再问高并发,求你把这篇发给他!

高并发,几乎是每个程序员都想拥有的经验。原因很简单:随着流量变大,会遇到各种各样的技术问题,比如接口响应超时、CPU load升高、GC频繁、死锁、大数据量存储等等,这些问题能推动我们在技术深度上不断精进。在过往的面试中,如果候选人做过高并发的项目,我通常会让对方谈谈对于高并发的理解,但是能系统性地回答好此问题的人并不多,大概分成这样几类:1、对数据化的指标没有概念:不清楚选择什么样的指标来衡量高并发系统?分不清并发量和QPS,甚至不知道自己系统的总用户量、活跃用户量,平峰和高峰时的QPS和TPS等

2020-07-01 09:49:22 215

转载 为什么大家都说 SELECT * 效率低?

面试官:“小陈,说一下你常用的SQL优化方式吧。”陈小哈:“那很多啊,比如不要用SELECT *,查询效率低。巴拉巴拉...”面试官:“为什么不要用SELECT *?它在哪些情况下效率低呢?”陈小哈:“SELECT * 它好像比写指定列名多一次全表查询吧,还多查了一些无用的字段。”面试官:“嗯...”陈小哈:“emmm~ 没了”陈小哈:“....??(几个意思)”面试官:“嗯...好,那你还有什么要问我的么?”陈小哈:“我问你个锤子,把老子简历还我!”-------------.

2020-07-01 09:45:39 1722

转载 tomcat+nginx,出现https链接无法访问http链接的CSS及JS

在使用tomcat+nginx时,如果是nginx代理https请求,可能会出现页面可以访问,但是无法加载js和css,这是由于nginx代理https,而nginx和tomcat之间是http,会报:The page at ‘https://XXX’ was loaded over HTTPS, but requested an insecure…让tomcat知道nginx发来的是http还是https。默认情况下,nginx得到的https的访问会以http的方式发给负载的tomcat。一、如

2020-06-24 08:54:12 1401

转载 java 坐标系运算 判断一个地理坐标是否在电子围栏 圆、矩形、多边形区域内

测试没问题,我用的是原始坐标;要注意的是坐标转换问题,要看当前是属于什么坐标系我国常用的地心系及对应椭球:为什么CGCS2000和WGS84要略微有些偏差?这是因为WGS84系是GPS的坐标系,而我国北斗定位则是需要自己的坐标系,就搞了一波CGCS2000。这几个坐标系的介绍放在下一节,而这些椭球体的转换将在第三部分介绍(主要就是数学中,空间直角坐标系旋转的问题)。1.3 我国常见GCS借助以下4个常见坐标系及椭球体,就可以推及到世界各地不同的GCS及椭球体,完成数据的...

2020-05-28 08:21:13 7153 3

原创 python pip 命令安装模块国内加速

在 pip install xxxx 加上 -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com。我自己采用的是阿里的加速

2020-05-20 09:56:49 239

原创 Java基础---删除String数组中的所有空值

/*** * 去除String数组中的空值 */ private String[] deleteArrayNull(String string[]) { String strArr[] = string; // step1: 定义一个list列表,并循环赋值 ArrayList<String> strList = new ArrayList<String>(); for (int i = .

2020-05-20 09:04:43 4662

转载 WebAPP移动前端性能优化规范和设计指导

关于Web前端优化,作为一名前端工程师肯定明白。比如PC端,我们平时主要用的也就是Firefox的两个插件,Yahoo的YSlow和Google的Page Speed(如果您有其它比较好用的,分享一下哦),它们会对你的网页进行检测,哪些做的比较好,哪些还有待改进,说的非常细,两个插件分别有不同的标准,但大体上是一致的。之前蚂蚁小编跟大家也介绍了一些关于移动端前端优化事项和知识点。比如 以下的八点移动端的优化规范指南。同时也是我们需要遵循的8项原则。 1、PC优化手段在Mobile中同样适用 2.

2020-05-11 09:15:02 309

原创 jQuery下拉多选插件ySelect.js

插件描述:简单实用的jQuery多选插件ySelect.js,支持反选,搜索,分组。演示效果:使用方法引入常用引用 1 2 <linkhref="css/font-awesome.min.css"rel="stylesheet"type="text/css"> <linkhref="css/ySelect.c...

2020-05-06 08:31:16 2826

转载 常见的十大物联网通讯技术优劣及应用场景

如今,“万物互联”不只是一种愿景,在很多实际的应用场景里面,已经实现了局部的物联网,如工业自动化、智慧农业、智能公交、高端酒店等场所。物联网是未来十年最具有市场前景的领域,相关的无线通讯技术也逐步出现。在实现物联网的通讯技术里面,蓝牙、zigbee、Wi-Fi、GPRS、NFC等是应用最为广泛的无线技术。除了这些,还有很多无线技术,它们在各自适合的场景里默默耕耘,扮演着不可或缺的角色。本文...

2020-04-29 08:37:03 5927

转载 电脑录屏软件选哪个?我帮你挑选了这6款。

在使用手机时,我们有时需要录制屏幕内容,向他人展示动态内容或演示某个操作,基于系统自带的录屏功能,我们可以很方便地进行录屏操作。而如果将手机换成电脑,不少人可能就不知道要怎么录屏了。因此,今天的这篇文章,我想为你介绍电脑上6 个可供选择的录屏软件,希望其中的一些对你有帮助。P.s:本文仅支持操作展示录屏,务必尊重内容知识产权,私自录屏,一律律师函警告。01. 录屏软件①Xb...

2020-04-28 08:25:04 2975

转载 面试官:谈谈关于缓存穿透,缓存击穿,缓存雪崩,热点数据失效问题的解决方案

1.我们使用缓存时的业务流程大概为:当我们查询一条数据时,先去查询缓存,如果缓存有就直接返回,如果没有就去查询数据库,然后返回。这种情况下就可能出现下面的一些现象。2.缓存穿透2.1什么是缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的...

2020-04-03 16:39:59 436

原创 Hutool,一个贼好用的 Java 工具类库

简介Hutool是Hu + tool的自造词,前者致敬我的“前任公司”,后者为工具之意,谐音“糊涂”,寓意追求“万事都作糊涂观,无所谓失,无所谓得”的境界。Hutool是一个Java工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让Java语言也可以“甜甜的”。Hutool最初是我项目中“util”包的一个整理,后来慢慢积累并加入更多非业务相关功能,并广泛学习其它开源项...

2020-04-02 10:15:13 295

转载 Spring Boot注解大全,一键收藏了!

一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。@Configuration等同于spring的XML配置文件;...

2020-03-31 09:24:45 138

转载 接口测试工具postman测试文件下载接口

官方文档有说明:If your API endpoint returns an image, Postman will detect and render it automatically. For binary response types, you should select “Send and download” which will let you save the response t...

2020-03-26 16:43:02 6482

转载 Mybatis 的7大天坑,你都踩过吗?

大多数开发者应该都使用过Hibernate或者Mybatis的框架,或多或少都踩过一些坑!如在MyBatis/Ibatis中#和$的区别,#方式能够很大程度防止sql注入,$方式无法防止Sql注入。所以,老司机 对新手说,最好用#。简单的说#{}是经过预编译的,是安全的,而是未经过预编译的,仅仅是取变量的值,是非安全的,存在sql注入。有些特例是需要关注的,有的时候需要用 解决解决一些实际问题...

2020-03-20 09:40:33 400

原创 spring boot项目打成的 jar包无法获取src/main/resources下文件

现象:@Configuration@ComponentScan@EnableAutoConfigurationpublic class Application implements CommandLineRunner { private static final Logger logger = Logger.getLogger(Application.class); ...

2020-03-18 13:35:00 1131 2

转载 springboot 给封装好的Page重新赋值(将id改成name)

在关联查询中,有时我们需要吧a表中的id存到b表中的某个字段(aId)中,这是在分页的时候发现我们不能在页面中显示aId,我们只需要a表的name属性怎么办呢?我们需要给返回的Page对象重新赋值在b的实体类中需要映射a.name字段,@Transient注解:表示该属性并非一个到数据库表的字段的映射如:public class Follow extends IdEntity {...

2020-02-26 08:54:19 1615

传智播客python2018.txt

传智播客python2018,想要学习的同学可以拿走,绝对物超所值!

2019-07-01

node.js全套教程,包括基础教程和就业教程

node.js全套教程,包括基础教程和就业教程。绝对是干货,楼主也在看这套视频

2018-01-18

java高级技术Dubbo视频教程

java高级技术Dubbo视频教程,需要学习Dubbo高级技术的朋友可以下载看看,绝对物超所值

2017-11-10

Java Spring技术栈构建团购网站前后台视频对应的sql脚本

Java Spring技术栈构建团购网站前后台视频对应的sql脚本

2017-08-17

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

TA关注的人

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