自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 你应该使用Java8 非阻塞异步API来优化你的系统了

非同步和非阻塞什么是非同步?异步执行不是同步的方式运行,或者不是按照你描述的顺序发生。什么是非阻塞不是阻塞的不会造成线程的阻塞为什么需要异步呢?业务方法太耗时间网络开销加解密操作文件上传下载......同步方式有什么坏处?Web 服务,因为执行某些过长的线程长时间占用线程,则你的服务吞吐量严重降低。桌面或者手机的应用,执行可能会卡顿,等待服务的请求耗时。传统的阻塞业务处理示例// 10 secondsImage img1 = download();ren

2020-12-13 16:41:49 232

原创 Hadoop 框架学习笔记之整体认知

Hadoop 框架学习笔记大数据技术解决什么问题?主要解决海量数据存储和计算。Hadoop的广义和狭义之分?狭义:Hadoop 由三部分组成:HDFS:分布式文件系统存储 MapReduce:分布式离线计算框架 YARN:资源调度框架广义:不仅是Hadoop框架,之外还有周边框架,比如 Flume:日志数据采集;Sqoop:关系型数据库的采集、导出;Hive:深度依赖Hadoop框架完成计算(SQL) Hbase:大数据领域的数据库广义的Hadoop是一个大数据生态圈。大数据简介大

2020-11-22 22:44:24 280

原创 Hadoop 框架学习笔记之整体认知

Hadoop 框架学习笔记大数据技术解决什么问题?主要解决海量数据存储和计算。Hadoop的广义和狭义之分?狭义:Hadoop 由三部分组成:HDFS:分布式文件系统存储 MapReduce:分布式离线计算框架 YARN:资源调度框架广义:不仅是Hadoop框架,之外还有周边框架,比如 Flume:日志数据采集;Sqoop:关系型数据库的采集、导出;Hive:深度依赖Hadoop框架完成计算(SQL) Hbase:大数据领域的数据库广义的Hadoop是一个大数据生态圈。大数据简介大

2020-11-22 22:40:01 222

原创 采访阿里专家15问,我对未来更加坚定!

1. 技术发展太快,跟不上技术发展的脚步怎么办?随着开发年限的增长,技术人应该如何保值?“技术 + 业务 主要两块;必须要掌握通用的技术,通用的技术先都要会用、会落地;技术只是一个工具,将需求转化成实现;有一个误区,好多人觉得技术比业务更重要,其实不见得,技术为业务服务;虽然技术发展的很快,技术是我们的基本功。比如做物流,物流这块业务的知识、链路要掌握;扎根业务,业务吃透、掌握物流领域的各种玩法;深入了解自己做的东西,比如过几年出去去相同的行业,对领域的理解,这就是我们的优势,对业务的洞察能力就是你的

2020-09-22 09:29:59 393

原创 前后端分离了,跨域问题怎么处理?

利用Nginx反向代理解决跨域问题使用jsonp 来进行解决,不推荐,老项目可以使用此方案,但是发送的http 请求体有大小限制,并且发送方式为get方式,大小限制、不安全。服务器代理CORS 请求头允许跨域,利用nginx或者php、java等后端语言设置允许跨域请求 header('Access-Control-Allow-Origin:*');//允许所有来源访问header('Access-Control-Allow-Method:POST,GET');//.

2020-07-10 00:14:41 309 1

原创 redis数据丢失你怎么处理?

1. 两种数据丢失的情况 主备切换的过程,可能导致数据丢失;1.1. 异步复制导致的数据丢 因为master -> slave的复制是异步的,所以可能有部分数据还没复制到slave,master就宕机了,此时这些部分数据就丢失了1.2 脑裂导致的数据丢失 脑裂就是说,某个maser 所在机器突然脱离了正常的网络,跟其他slave机器不能连接,但是实际上master还运行着,此时哨兵可能就会认为master 宕机了,然后开启选举,将其他slave切换成了master,这个时候,

2020-07-05 10:01:29 1015

原创 redis哨兵架构基础

1. 哨兵的介绍 sentinel , 中文是哨兵。 哨兵是redis 集群架构中非常重要的一个组件,主要功能如下: (1)集群监控:负责监控reidis master 和slave 进程是否正常工作; (2)消息通知:如果某个redis实例有故障,那么哨兵负责发送消息作为报警通知给管理员; (3)故障转移:如果master node挂掉了,会自动转移到slave node上; (4)配置中心:如果故障转移发生了,通知client 客户端新的master 地址; 哨

2020-07-05 09:59:25 515

原创 面试篇之数据结构与算法概述

01.数据结构与算法概述本节内容概要数据结构及算法概念以及用途数据结构分类算法的5大特征算法的时间复杂度与空间复杂度1.1、概念1). 数据结构是一门研究数据组织方式的学科,可以帮助我们写出高效优雅的代码。选择适当的数据结构可以提高程序的执行效率(时间复杂度)和存储效率(空间复杂度)2). 算法是用来操作数据的一种方法,解决某个问题的计算方法、步骤。数据结构是为算法服务的,算法要作用在特定的数据结构之上程序=数据结构+算法weixin sousuo guanzhu &qu

2020-06-14 23:11:58 138

原创 MySQL万能优化套路你值得拥有

1. 查看优化器状态show variables like 'optimizer_trace';2. 会话级别临时开启set session optimizer_trace="enabled=on",end_markers_in_json=on;3. 设置优化器追踪的内存大小set OPTIMIZER_TRACE_MAX_MEM_SIZE=1000000;4. 执行自己的SQLselect host,user,plugin from user;

2020-06-14 11:52:43 629

原创 2020最新MongoDB规范

前言MongoDB是非关系型数据库的典型代表,DB-Engines Ranking 数据显示,近年来,MongoDB在 NoSQL领域一直独占鳌头。MongoDB是为快速开发互联网应用 而设计的数据库系统,其数据模型和持 久化策略就是为了构建高读/写的性能,并且可以方面的弹性拓展。随着MongoDB的普及和使用量的快 速增长,为了规范使用,便于管理和获取更高的性能,整理此文档。我们从 数据库设计规范、集合设计 规范、索引设计规范、文档设计规范、API使用规范、连接规范等方面进行阐述和要求。存储选型主

2020-06-14 11:45:44 693

原创 2020Redis开发规范你应该了解

前言在业务中,会经常使用 redis 作为后端缓存、存储。如果结构规划不合理、命令使用不规范,会造成系 统性能达到瓶颈、活动高峰系统可用性下降,也会增大运维难度。这里总结了一些使用规范,希望能从 源头上避免上述问题的出现。存储选型Redis是一个单进程、基于内存、弱事务(单个命令可以保证原子性,多命令无法保证)的NoSql存储系 统,适用于高QPS、低延迟、弱持久化的场景,适宜用作缓存。从经验出发: 在qps>5000、容量<50G、存储高频数据时考虑redis;在qps<1000

2020-06-07 10:21:17 684

原创 使用Docker构建企业级自定义镜像

前言 临下班前,楼主接到了一个需求,由于基础镜像标准发生变更,需要按照最新的Docker 镜像标准构建自己应用的自定义镜像。目前的标准是这样的:基础架构组只提供所有项目必须接入的3个公共镜像,这3个公共基础镜像包含了:JDK8、Skywalking、Arthas。对于各自业务组的应用如果还需要加入其它镜像,则由各个业务组自己基于基础架构组提供的公共镜像之上,再添加自定义的镜像,结构图如下: 构建步骤编写Dockerfile 基于最新的规范来看,我们需要编写一个Dockerfile,然后引用基

2020-05-19 22:57:04 712

原创 面试篇之MQ一文带你总结

1.MQ的应用场景导读-xmind1.1.解耦智能客服系统中,企业注册完成后,需要完成一系列初始化操作,如创建es的索引,创建默认的一些数据发短信1.2.异步减少耗时,异步下单操作,接收到参数之后写入mq,通过多个节点去下单,然后websocket推送结果(参数中带有clientid)1.3.削峰高并发场景排队2.技术选型mq优势缺点RabbitMQerlang语言开发,无法二次维护,稳定及社区活跃度比较高RocketMQjava,阿里系,可二度开发

2020-05-17 21:34:42 719

原创 什么?OSS存储你还在用FastDFS?MinIO了解一下!!!

什么是MinIO ?根据官方定义:MinIO 是在 Apache License v2.0 下发布的对象存储服务器。 它与 Amazon S3 云存储服务兼容。 它最适合存储非结构化数据,如照片,视频,日志文件,备份和容器/ VM 映像。 对象的大小可以从几 KB 到最大 5TB。MinIO 服务器足够轻,可以与应用程序堆栈捆绑在一起,类似于 NodeJS,Redis 和 MySQL。...

2020-05-06 23:17:27 8417 1

原创 互联网搜索核心组件:Lucene 20 岁生日啦

前言 你用过Elasticsearch么?那你知道Elasticsearch底层是基于什么技术演化而来的么?相信用过ES并深入了解过ES的都知道,ES是基于Lucene,隐藏复杂性,提供简单易用的restful api接口、java api接口、其他语言的接口。现在Lucene从诞生到现在已经20年了,Happy Birthday , Lucene!ES官网还特意为Lucene庆生,链接:h...

2020-04-15 21:16:21 849 1

原创 面试 Spring Boot 一点也不要慌

什么是spring boot?问:Spring Boot的优点是什么?问:您使用过哪些构建工具来开发Spring引导应用程序?问:什么是JavaConfig?问:如何在不重启服务器的情况下在Spring引导时重新加载我的更改?问:什么是Spring boot actuator?问:如何将Spring Boot应用程序作为war包部署?问:如何禁用执行器端点安全在Spring启动?问...

2020-04-12 22:30:04 144

原创 这个清明节我要学习微服务架构下分布式事务Seata

Seata 是什么?Seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。在 Seata 开源之前,Seata 对应的内部版本在阿里经济体内部一直扮演着分布式一致性中间件的角色,帮助经济体平稳的度过历年的双11,对各BU业务进行了有力的支撑。经过多年沉淀与积累,商业化产品先后在xx云、金融云进行售卖。2019.1 为了打造更加完善的技术生态和普惠...

2020-04-02 23:24:07 769

原创 技术人,从罗永浩直播带货我们学到了什么?

罗永浩直播带货 从3月30日晚间至4月1日,相继有多家厂家宣布将出现在老罗首秀中。3月30日晚,网易严选发布预告,称网易严选人体工学椅将在罗永浩抖音直播首秀售卖。随后,每日黑巧也通过自己的官方账号发布消息,称将出现在4月1日晚的抖音首秀直播中,“官宣:一起交个朋友吧(绝对不是谣言)”。3月31日上午,小米手机发布海报,称小米10成为罗永浩抖音带货的第一款手机。而据知情人士介绍,罗永浩当晚销售的...

2020-04-02 23:22:49 1063

原创 SpringBoot 从入门到进阶系列小册SpringForAll社区全网独家发布

经过小编的整理,将社区的SpringBoot系列从入门到进阶文章进行了小册子制作,领取方式见文末,小册大纲如下:Spring Boot 入门系列Spring Boot 快速入门《使用Intellij中的Spring Initializr来快速构建Spring Boot/Cloud工程》[《Spring Boot 之 HelloWorld 详解》][《Spring Boot 配置文件详解...

2020-03-30 23:04:10 946

原创 阿里云新发布的项目生成器真香

脚手架是什么呢?参考维基百科的定义,找到如下解释:脚手架亦称为鹰架、棚架和排栅,是一种临时性的建筑工具,架设在正在组建或重建的楼房或建筑物,亦用于轮船等大型的移动式物品,供施工人员在墙壁等高处施工。通常是由金属导管组成的模块化工具,也有使用其他材料制成,比如在东方国家就有用竹子制成的支架。为什么需要脚手架?现在是一个推崇编程体验感的时代,不要把时间耗费在复杂的配置中(对新手来说,Spr...

2020-03-28 21:21:27 386

原创 什么?知乎又挂了?我们来聊聊微服务的高可用如何保障

故事今天中午知乎又一次宕机,访问返回502错误,如下图所示:高可用标准那服务既然挂了,我们来聊聊如何在微服务中如何保障他能够不挂呢?首先我们来看看业界的高可用标准,一般常见的概括如下:5个9的SLA在一年内只能是5分钟的不可用时间,5分钟啊,如果按一年只出1次故障,你也得在五分钟内恢复故障,感觉还是有点厉害。什么是高可用?那我们在做高可用之前,先通过维基百科了解一下到底什么是真正的...

2020-03-28 21:19:42 615

原创 ES数十亿数据量级的场景下如何优化查询性能?

ES 客户端读取数据的流程客户端 -> shard -> filesystem cache -> 磁盘文件海量数据检索查询性能优化思路如果内存足够大, filesystem cache 会缓存,如果查询走filesystem cache 则速度耗时在毫秒级别,如果查询请求走磁盘文件,则最少查询耗时都在秒级别。如果整个磁盘上索引数据文件在3台机器上,一共占用了1T的磁盘容量...

2020-03-28 21:15:39 829

原创 解决Redis分布式锁业务代码超时导致锁失效问题

1、redis分布式锁的基本实现redis加锁命令:SETNX resource_name my_random_value PX 30000 这个命令的作用是在只有这个key不存在的时候才会设置这个key的值(NX选项的作用),超时时间设为30000毫秒(PX选项的作用) 这个key的值设为“my_random_value”。这个值必须在所有获取锁请求的客户端里保持唯一。SETNX 值保持唯...

2020-03-25 00:22:27 2029

原创 什么?知乎又挂了?我们来聊聊微服务的高可用如何保障

故事今天中午知乎又一次宕机,访问返回502错误.高可用标准那服务既然挂了,我们来聊聊如何在微服务中如何保障他能够不挂呢?首先我们来看看业界的高可用标准,一般常见的概括如下:5个9的SLA在一年内只能是5分钟的不可用时间,5分钟啊,如果按一年只出1次故障,你也得在五分钟内恢复故障,感觉还是有点厉害。什么是高可用?那我们在做高可用之前,先通过维基百科了解一下到底什么是真正的高可用呢?系...

2020-03-25 00:19:36 158

原创 阿里云新发布的项目生成器真香

脚手架是什么呢?参考维基百科的定义,找到如下解释:脚手架亦称为鹰架、棚架和排栅,是一种临时性的建筑工具,架设在正在组建或重建的楼房或建筑物,亦用于轮船等大型的移动式物品,供施工人员在墙壁等高处施工。通常是由金属导管组成的模块化工具,也有使用其他材料制成,比如在东方国家就有用竹子制成的支架。为什么需要脚手架?现在是一个推崇编程体验感的时代,不要把时间耗费在复杂的配置中(对新手来说,Spr...

2020-03-25 00:16:19 113

原创 什么?知乎又挂了?我们来聊聊微服务的高可用如何保障

故事今天中午知乎又一次宕机,访问返回502错误,如下图所示:高可用标准那服务既然挂了,我们来聊聊如何在微服务中如何保障他能够不挂呢?首先我们来看看业界的高可用标准,一般常见的概括如下:5个9的SLA在一年内只能是5分钟的不可用时间,5分钟啊,如果按一年只出1次故障,你也得在五分钟内恢复故障,感觉还是有点厉害。什么是高可用?那我们在做高可用之前,先通过维基百科了解一下到底什么是真正的...

2020-03-25 00:13:41 178

原创 什么?知乎又挂了?我们来聊聊微服务的高可用如何保障

故事今天中午知乎又一次宕机,访问返回502错误,如下图所示:高可用标准那服务既然挂了,我们来聊聊如何在微服务中如何保障他能够不挂呢?首先我们来看看业界的高可用标准,一般常见的概括如下:5个9的SLA在一年内只能是5分钟的不可用时间,5分钟啊,如果按一年只出1次故障,你也得在五分钟内恢复故障,感觉还是有点厉害。什么是高可用?那我们在做高可用之前,先通过维基百科了解一下到底什么是真正的...

2020-03-25 00:12:47 141

原创 什么?知乎又挂了?我们来聊聊微服务的高可用如何保障

故事今天中午知乎又一次宕机,访问返回502错误,如下图所示:高可用标准那服务既然挂了,我们来聊聊如何在微服务中如何保障他能够不挂呢?首先我们来看看业界的高可用标准,一般常见的概括如下:5个9的SLA在一年内只能是5分钟的不可用时间,5分钟啊,如果按一年只出1次故障,你也得在五分钟内恢复故障,感觉还是有点厉害。什么是高可用?那我们在做高可用之前,先通过维基百科了解一下到底什么是真正的...

2020-03-25 00:11:58 218

原创 阿里云新发布的项目生成器真香

脚手架是什么呢?参考维基百科的定义,找到如下解释:脚手架亦称为鹰架、棚架和排栅,是一种临时性的建筑工具,架设在正在组建或重建的楼房或建筑物,亦用于轮船等大型的移动式物品,供施工人员在墙壁等高处施工。通常是由金属导管组成的模块化工具,也有使用其他材料制成,比如在东方国家就有用竹子制成的支架。为什么需要脚手架?现在是一个推崇编程体验感的时代,不要把时间耗费在复杂的配置中(对新手来说,Spr...

2020-03-19 22:55:39 117

原创 阿里云新发布的项目生成器真香

脚手架是什么呢?参考维基百科的定义,找到如下解释:脚手架亦称为鹰架、棚架和排栅,是一种临时性的建筑工具,架设在正在组建或重建的楼房或建筑物,亦用于轮船等大型的移动式物品,供施工人员在墙壁等高处施工。通常是由金属导管组成的模块化工具,也有使用其他材料制成,比如在东方国家就有用竹子制成的支架。为什么需要脚手架?现在是一个推崇编程体验感的时代,不要把时间耗费在复杂的配置中(对新手来说,Spr...

2020-03-19 22:54:37 167

原创 阿里云新发布的项目生成器真香

脚手架是什么呢?参考维基百科的定义,找到如下解释:脚手架亦称为鹰架、棚架和排栅,是一种临时性的建筑工具,架设在正在组建或重建的楼房或建筑物,亦用于轮船等大型的移动式物品,供施工人员在墙壁等高处施工。通常是由金属导管组成的模块化工具,也有使用其他材料制成,比如在东方国家就有用竹子制成的支架。为什么需要脚手架?现在是一个推崇编程体验感的时代,不要把时间耗费在复杂的配置中(对新手来说,Spr...

2020-03-19 22:53:17 108

原创 阿里云新发布的项目生成器真香

脚手架是什么呢?参考维基百科的定义,找到如下解释:脚手架亦称为鹰架、棚架和排栅,是一种临时性的建筑工具,架设在正在组建或重建的楼房或建筑物,亦用于轮船等大型的移动式物品,供施工人员在墙壁等高处施工。通常是由金属导管组成的模块化工具,也有使用其他材料制成,比如在东方国家就有用竹子制成的支架。为什么需要脚手架?现在是一个推崇编程体验感的时代,不要把时间耗费在复杂的配置中(对新手来说,Spr...

2020-03-19 22:32:59 446

原创 那些年非常火的MyCAT是什么?

什么是 MyCAT ?根据 MyCAT 官网 - http://mycat.io/ 的描述可以知道, MyCAT 是如下的一个东东:一个彻底开源的,面向企业应用开发的大数据库集支持事务、ACID、可以替代MySQL的加强版数据库一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server...

2020-03-12 08:51:35 182

原创 内存寻址和变量

让我们想象一下 Excel 软件大家都知道 Excel 软件。Excel 表格由单元格组成。每个单元格都有自己的唯一标识符 (A1、A2、…B1、B2)。如果你知道某一单元格的标识符,就总是可以向其中写入一些值,或者获取存储在其中的任何值。计算机内存的组织方式也与此非常相似。“程序运行时,程序和程序数据存储在内存中。所有的计算机内存都被分成小单元或字节。每个单元都有一个与之关联的唯一的标识...

2020-02-29 16:19:01 881

原创 高并发场景下锁的使用技巧

本文来源:https://www.cnblogs.com/jackyfei/p/12142840.html如何确保一个方法,或者一块代码在高并发情况下,同一时间只能被一个线程执行,单体应用可以使用并发处理相关的 API 进行控制,但单体应用架构演变为分布式微服务架构后,跨进程的实例部署,显然就没办法通过应用层锁的机制来控制并发了。那么锁都有哪些类型,为什么要使用锁,锁的使用场景有哪些?今天...

2020-01-13 23:32:21 163

原创 Spring boot使用spring retry重试机制

当我们调用接口的时候由于网络原因可能失败,再尝试就成功了,这就是重试机制。非幂等的情况下要小心使用重试。tips:幂等性HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,其任意多次执行对资源本身所产生的影响均与一次执行的影响相同。注解方式使用Spring Retry(一)Maven依赖<!-- 重试机...

2020-01-03 08:24:53 1183

原创 文件路径的描述与操作 Path & Paths

1、文件路径字符串转 Patsh 对象Path filePath = Paths.get("/Users/Anoyi/aaa.txt");另一种写法:Path filePath = Paths.get("/Users", "Anoyi", "aaa.txt");2、 Path 对象常用操作# 获取文件名 aaa.txtfilePath.getFileName()# 获取父路...

2020-01-03 08:20:53 2426

原创 SpringBoot静态视频实时播放

问题描述Spring Boot API 定义 GET 请求 API , 返回视频流。前端通过 标签加载并播放视频,效果是必须等整个视频资源全部加载到浏览器才能播放,而且 标签默认的进度条无法控制视频的播放。最终希望的效果是视频流边加载边播放,且播放器的控制正常使用。解决方法Spring Framework 文件请求处理import org.springframework.core.i...

2020-01-03 08:18:19 145944 1

原创 Spring Boot 默认指标

了解有关 Spring Boot 默认指标及其来源的更多信息。您是否注意到 Spring Boot 和 Micrometer 为您的应用生成的所有默认指标?如果没有 - 您可以将 actuator 依赖项添加到项目中,然后点击 / actuator / metrics 端点,在那里您将找到有关 JVM 、进程、Tomcat、流量等的有用信息。然后,添加一些缓存,数据源 或 JPA 依赖项,甚至会...

2020-01-03 08:15:04 1035

原创 Spring Boot 默认的指标数据从哪来的?

了解有关 Spring Boot 默认指标及其来源的更多信息。您是否注意到 Spring Boot 和 Micrometer 为您的应用生成的所有默认指标?如果没有 - 您可以将 actuator 依赖项添加到项目中,然后点击 / actuator / metrics 端点,在那里您将找到有关 JVM 、进程、Tomcat、流量等的有用信息。然后,添加一些缓存,数据源 或 JPA 依赖项,甚至会...

2019-12-21 20:54:42 908

SpringBoot 从入门到进阶系列官方小册.pdf

将社区的SpringBoot系列从入门到进阶文章进行了小册子制作,内容包含:Spring Boot 快速入门、Spring Boot Web 开发、Spring Boot 数据访问、Spring Boot 日志管理、Spring Boot 监控管理、Spring Boot 整合 Dubbo、Spring Boot 整合 Elasticsearch、Spring Boot 监控管理。

2020-03-30

空空如也

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

TA关注的人

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