自定义博客皮肤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的博客

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

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

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

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

原创 深入思考微服务的七个主流观点

一、逃离单体系统,拥抱微服务?单体系统和微服务的区别在于,一个单体系统是一个大而全的功能集合,每个服务器运行的是这个应用的完整服务。而微服务是独立自治的功能模块,它是生态系统中的一部分,和其他微服务是共生关系。现在,业界对单体系统和微服务的普遍观点是:单体系统非常容易开发、测试、部署,但是单体系统面对的问题也很多,例如开发效率变低、维护成本增加、部署影响变大、可扩展性较差、技术选型成本高,而引...

2019-08-30 10:46:16 291

原创 秒杀系统架构知识点

秒杀是互联网应用常见的应用场景,比如淘宝双十一、京东618,以及一些交易网站或应用在特定的时间举行的抢购活动。由于商品的稀缺或者特价优惠,并且为限量销售,导致大量用户前来抢购,并且会在约定的秒杀开始时间点同时进行抢购,造成服务器巨大的访问压力,对于一个秒杀系统,需要有特殊的设计才可解决秒杀场景下的巨大流量洪峰以及数据的一致性问题。秒杀系统场景的主要特点秒杀时大量用户会在同一时间同时进行抢购...

2019-08-30 10:19:16 219

原创 StringBuilder为什么线程不安全?

引言面试官:StringBuilder和StringBuffer的区别在哪?我:StringBuilder不是线程安全的,StringBuffer是线程安全的面试官:那StringBuilder不安全的点在哪儿?我:。。。(哑巴了)在这之前我只记住了StringBuilder不是线程安全的,StringBuffer是线程安全的这个结论,至于StringBuilder为什么不安全...

2019-08-30 09:28:54 1206

转载 Java解决高并发秒杀商品

在看本文章之前,需要了解Spring boot搭建和使用 ,本篇文章核心问题是如何解决高并发问题。开发环境:redis缓存4.0.1,Rabbitmq消息队列,Erlang(这个跟MQ环境有关,先安装Erlang,再安装MQ),mysql5.7,JDK1.8(Spring boot要用1.8以上的版本)开发框架:Spring boot 2.0.4 , mybatis,前端页面:thymel...

2019-08-30 09:14:02 766 1

转载 身在网络时代你知道你的WiFi怎么来的吗?看WiFi模块四种工作模式

WIFI模块常见的四种工作模式:透传模式、串口指令模式、HTTPD Client模式、GPIO模式,使WIFI模块可以适用于不同环境下工作。透明传输模式:在该模式下,模块实现串口与网络之间的透明传输,实现通用串口设备与网络设备之间的数据传递。 串口指令模式:在该模式下,用户可以按照我们的协议发送数据给服务器,无需重启即可向不同的服务器发送数据。 GPIO模式:在该模式下,用户可以发送我们协...

2019-08-29 16:20:11 363

转载 centos7 调优说明及执行

主要参考https://blog.csdn.net/largetalk/article/details/16863689cat/etc/sysctl.conf根据提示找到/usr/lib/sysctl.d/00-system.conf则以下修改/usr/lib/sysctl.d/00-system.conf-----------------------------------------...

2019-08-26 10:09:22 418

原创 Redis常用的14大使用场景

2019-08-26 09:55:17 123

原创 nginx自定义错误页面

这里配置注意是在 server 443端口 ,蓝色部分为主要部分。这个server不是全部代码。server{ #监听443端口 listen 443; #对应的域名,把baofeidyz.com改成你们自己的域名就可以了 server_name localhost;       proxy_intercept...

2019-08-23 09:07:56 530

原创 nginx代理tomcat

本文记录的使用环境为 centOS7.2系统,Nginx1.10.1, tomcat8.5nginx已经实现 https试了好几次终于成功,Nginx实现了 SSL ,那么tomcat就不需要再配置 SSL 了,在这里我取消了原来tomcat的SSL配置。一、首先修改/usr/local/nginx/conf下的nginx.conf文件,在http 域下增加,绿色部分为主要部分。注意是...

2019-08-21 09:16:26 376

原创 Nginx配置SSL证书

本文主要记录Nginx怎么配置SSL证书,前提是Nginx安装成功和SSL证书已经获取。在我们下载的证书文件中有一个Nginx的文件夹,这里面的两个文件都是需要的。我们需要把这个两个文件上传到 linux 服务器中,推荐放到/etc/ssl/目录下然后我们需要去找到nginx的配置文件。ps -ef | grep nginx可以看到 nginx的目录是/usr/loc...

2019-08-21 09:15:37 117

原创 一文搞懂为什么项目开发要使用前后端分离开发模式?

以前的项目大多数都是java程序猿又当爹又当妈,又搞前端(ajax/jquery/js/html/css等等),又搞后端(java/mysql/Oracle等等)。随着时代的发展,渐渐的许多大中小公司开始把前后端的界限分的越来越明确,前端工程师只管前端的事情,后端工程师只管后端的事情,正所谓术业有专攻,一个人如果什么都会,那么他毕竟什么都不精。大中型公司需要专业人才,小公司需要全才,但是对...

2019-08-21 09:03:38 949

原创 《上班族崩溃行为大赏》

有很多工作都是看起来有趣入门很简单开始很容易等越过山丘才发现咦???...

2019-08-20 10:29:45 319

原创 互联网人职业发展之路:三年升高工,七年做架构,十年送外卖

前段时间虎扑上有一篇热帖,叫《一年前我月薪两万被叫老总,如今35岁在美团送外卖》,讲的是一个新媒体公司从业者人到中年的人生境遇,互联网行业里一直有一种说法,叫做“互联网公司没有35岁以上的中年人”,那过了35岁的互联网人都去哪儿了呢?今天我们就帮大家畅想一下,互联网人25岁到35岁的职业发展之路——01. 程序员02. 产品03. 运维04....

2019-08-20 08:55:15 207

原创 Redis分布式锁的正确实现方式

前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我们至少要确保锁的...

2019-08-18 11:57:30 78

原创 安装mysql5.7后无法启动,每次重启服务器后/var/run/mysqld 目录都需要手动去创建解决方案

鉴于很多童鞋反应,mysql5.7安装后出现无法启动,建立/var/run/mysqld并赋权mysql用户解决了启动的问题,但是重启系统后又出现无法启动的问题,导致/var/run/mysqld目录每次重启后都需要手动去创建并赋权mysql用户才能起到mysql,可以说,这是mysql5.7的一个小BUG,经过探索实践,现给出终极解决方案:首先申明,修改my.cnf没有用。mkdir...

2019-08-16 14:13:55 3088

原创 CentOS7安装Python3.6.5

身测有效Linux版本:CentOS7.4 64位Python版本:Python3.6.5第一步:准备编译环境:yum groupinstall 'Development Tools'yum install zlib-devel bzip2-devel openssl-devel ncurses-devel第二步:下载Python3.6.5wget --no-...

2019-08-16 10:14:00 148

原创 CENTOS7下安装redis 4.0

一、安装redis第一步:下载redis安装包wget http://download.redis.io/releases/redis-4.0.6.tar.gz[root@iZwz991stxdwj560bfmadtZ local]# wget http://download.redis.io/releases/redis-4.0.6.tar.gz--2017-12-13 12:3...

2019-08-16 09:44:38 256

原创 centos7中安装 java8

一、下载jdkjdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html下载jdk-8u152-linux-x64.rpm 或jdk-8u152-linux-x64.tar.gz(根据自己的系统位数选择对应的包)如图:二、安装jdk因为我安装的CentO...

2019-08-16 09:23:02 155

转载 CentOS 7 安装Nginx 并配置自动启动

1、官网下载安装包http://nginx.org/en/download.html,选择适合Linux的版本,这里选择最新的版本,下载到本地后上传到服务器或者centos下直接wget命令下载。切换到/usr/local目录,下载软件包 1 2 #cd/usr/local #wgethttp://nginx.or...

2019-08-15 17:47:55 751

原创 VirtualBox中安装CentOS 7后无法上网问题

1、在VirtualBox的设置界面,点击“网络”,将虚拟机的“连接方式”设置为桥接模式,“界面名称”选择笔记本的无线网卡(一般是“wireless Network”的选项)将“接入网线”勾选上。2、打开linux系统,输入vi /etc/sysconfig/network-scripts/ifcfg-enp0s3打开网卡配置文件(可能你的不是这个文件,但是...

2019-08-15 16:41:36 1715 1

转载 JAVA 线程池的正确打开方式

JDK版本号 1.8JDK中Executors 使用的隐患先来看一段代码,我们要创建一个固定线程池,假设固定线程数是4。代码如下:Executors是JAVA并发包中提供的,用来快速创建不同类型的线程池。是不是很简单,创建线程池只需一行代码。对于一些个人项目或临时性的项目,这样写确实没什么问题,而且开发速度很快。但在一些大型项目中,这种做法一般是禁止的。WHY???...

2019-08-15 13:56:41 115

转载 Java线程池的运行原理以及使用详解

一、 为什么要使用线程池在一些需要使用线程去处理任务的业务场景中,如果每一个任务都创建一个线程去处理,任务处理完过后,把这个线程销毁,这样会产生大量的线程创建,销毁的资源开销。使用线程池能有效的控制这种线程的创建和销毁,而且能够对创建的线程进行有效的管理。二、Java线程池相关的API介绍1. Executor接口主要是用来执行提交的任务。下面是接口定义:public interfa...

2019-08-15 10:03:25 152

原创 阿里蚂蚁金服中间件3轮题目:CMS +缓存雪崩+分布式+ AIO +负载均衡

第一轮自我介绍,自己做的项目和技术领域说说HaspMap底层原理?再说说它跟HaspTable和ConcurrentHashMap的他们之间的相同点和不同点?讲讲jdk1.7和1.8的区别?几种内置的线程池什么是原子性,可见性,有序性?说几个常用的锁接口实现锁。MySQL的事务隔离级别以及MVCC机制Redis的缓存雪崩,缓存穿透以及如何解决?分布式架构简单介绍CMS收集器和G1...

2019-08-14 18:12:17 267

转载 Java开发网络通讯之Netty传输过程中出现的大小端问题,嵌入式软件工程师必知,Java工程师必会

运行在同一台计算机上的进程相互通信时,一般不用考虑字节的顺序(字节序),字节序是一个处理器架构特性。大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中优缺点大端模式优点:符号位在所表示的数据的内存的第一个字节中,便于快速判断数据的正负和大小小端模式优点:1. 内存的...

2019-08-13 13:39:09 1438

转载 java高级工程师面试题之Netty面试题(2)

1.BIO、NIO和AIO的区别?BIO:一个连接一个线程,客户端有连接请求时服务器端就需要启动一个线程进行处理。线程开销大。伪异步IO:将请求连接放入线程池,一对多,但线程还是很宝贵的资源。NIO:一个请求一个线程,但客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。AIO:一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通...

2019-08-12 10:15:05 154

转载 java高级工程师面试题之Netty面试题(1)

1.Netty 是什么?Netty 是一款基于 NIO(Nonblocking I/O,非阻塞IO)开发的网络通信框架,对比于 BIO(Blocking I/O,阻塞IO),他的并发性能得到了很大提高。难能可贵的是,在保证快速和易用性的同时,并没有丧失可维护性和性能等优势。2.Netty 的特点是什么?高并发:Netty 是一款基于 NIO(Nonblocking IO,非阻塞IO)开...

2019-08-12 10:12:55 1150

原创 死磕java代码优化之数据库---MySQL 如何优化大分页查询?

一 背景大部分开发和DBA同行都对分页查询非常非常了解,看帖子翻页需要分页查询,搜索商品也需要分页查询。那么问题来了,遇到上千万或者上亿的数据量怎么快速的拉取全量,比如大商家拉取每月千万级别的订单数量到自己独立的ISV做财务统计;或者拥有百万千万粉丝的公众大号,给全部粉丝推送消息的场景。本文讲讲个人的优化分页查询的经验,抛砖引玉。二 分析在讲如何优化之前我们先来看看一个比较常见错误的写...

2019-08-07 09:54:31 381

转载 centos 根据端口号查询 程序路径

(1) 根据端口号查询进程 ,比说6379netstat -lnp|grep 6379输出如下 ,红色部分是进程号(2) 根据进程号,查询寻程序路径ll /proc/2757这样就找到了程序路径...

2019-08-06 14:46:38 1337

转载 select、poll、epoll之间的区别(搜狗面试)

(1)select==>时间复杂度O(n)它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长。(2)poll==>时间复杂度O(n)poll本质上和select没有区别,它将用...

2019-08-06 09:50:59 128

转载 java核心基础之Lock和synchronized比较详解

今天看了并发实践这本书的ReentantLock这章,感觉对ReentantLock还是不够熟悉,有许多疑问,所有在网上找了很多文章看了一下,总体说的不够详细,重点和焦点问题没有谈到,但这篇文章相当不错,说的很全面,主要的重点都说到了,所有在这里转载了这篇文章,注意红色字体。  在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java...

2019-08-06 09:18:59 145

传智播客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关注的人

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