自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 DASH、HLS和MP4格式有什么播放体验区别

视频点播支持视频转码的输出格式主要有DASH、HLS和MP4,这三种的播放体验如表1所示。 表1视频播放体验比较 视频格式 播放体验 流量占用情况 DASH 对视频进行切片,按切片播放,缓存小起播...

2020-06-10 09:20:16 158 0

转载 MYSQL读写分离,主从复制的原理

作为一名java程序员,求职面试时时常会遇到类似这样的问题: 你有没有做过MySQL读写分离?如何实现MySQL的读写分离?说说MySQL主从复制原理?如何解决 MySQL主从同步延时问题?1、MySQL的读写分离 说到读写分离,我们先了解下什么是主从复制。 主从复制,是用来建立一个和主数据...

2020-06-09 08:27:35 44 0

转载 MySQL事务日志

作者 | Amazing10 还记得刚上研究生的时候,导师常挂在嘴边的一句话,“科研的基础不过就是数据而已。”如今看来,无论是人文社科,还是自然科学,或许都可在一定程度上看作是数据的科学。 倘若剥开研究领域的外衣,将人的操作抽象出来,那么科研的过程大概就是根据数据流动探索其中的未知信息吧。当然...

2020-06-06 23:13:25 97 0

转载 Spring Bean的生命周期

一、简介 Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,从BeanFactory或ApplicationContext取得的实例为Singleton,也就是预设为每一个Bean的别名只能维持一个实例,而不是每次都产生一个新的对象使用Singleton模式产生单一实例,...

2020-05-26 08:50:43 38 0

转载 Java中volatile和内存模型(JMM)

volatile 应该算是Java 后端面试的必考题,因为多线程编程基本绕不开它,很适合作为并发编程的入门题。 开场 面试官:你先自我介绍一下吧! 安琪拉: 我是安琪拉,草丛三婊之一,最强中单(钟馗不服)!哦,不对,串场了,我是**,目前在–公司做–系统开发。 面试官: 看你简历上写熟...

2020-05-14 17:33:06 49 0

转载 redis使用过程中的缓存穿透,缓存击穿缓,存雪崩问题

一、前言 在我们日常的开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题,可是一旦涉及大数据量的需求,比如一些商品抢购的情景,或者是主页访问量瞬间较大的时候,单一使用数据库来保存数据的系统会因为面向磁盘,磁盘读/写速度比较慢的问...

2020-05-14 16:02:56 41 0

转载 Hash算法和一致性Hash算法详解

Hash算法在路由算法应用中,为了保证数据均匀的分布,例如有3个桶,分别是0号桶,1号桶和2号桶;现在有12个球,怎么样才能让12个球平均分布到3个桶中呢?使用Hash算法的做法是,将12个球从0开始编号,得到这样的一个序列:0,1,2,3,4,5,6,7,8,9,10,11。将这个序列中的每个值...

2020-05-14 15:22:54 49 0

转载 缓存热点key问题(mutex key)

一、引出热点key问题 我们通常使用缓存 + 过期时间的策略来帮助我们加速接口的访问速度,减少了后端负载,同时保证功能的更新,一般情况下这种模式已经基本满足要求了。 但是有两个问题如果同时出现,可能就会对系统造成致命的危害: (1) 这个key是一个热点key(例如一个重要的新闻,一个热门...

2020-05-13 09:59:55 87 0

转载 Java中的final关键字

谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字。另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法。 一、final关键字的基本用法 在Java中,final关键字可以用来修饰类、方法和变量(包括...

2020-05-13 08:59:42 61 0

转载 Java中Volatile关键字

阅读目录 一、基本概念 二、Volatile原理 一、基本概念 先补充一下概念:Java 内存模型中的可见性、原子性和有序性。 可见性:   可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。通常,我们无法确保执行读操作的线程能适时地看到其他线程写入的值,有时甚至是根本...

2020-05-13 08:41:47 50 0

转载 python实现8大排序算法

一、冒泡排序 冒泡排序算法的运作如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何一...

2020-04-25 22:36:11 58 0

转载 python 字典、列表、字符串 之间的转换

1、列表与字符串转换 列表转字符串: 将列表中的内容拼接成一个字符串 将列表中的值转成字符串 字符串转列表: 用eval转换 将字符串每个字符转成列表中的值 将字符串按分割成列表 2、列表与字典转换 列表转字典...

2020-04-24 19:06:54 53 0

转载 IO模型

1. 引言 同步异步I/O,阻塞非阻塞I/O是程序员老生常谈的话题了,也是自己一直以来懵懵懂懂的一个话题。比如:何为同步异步?何为阻塞与非阻塞?二者的区别在哪里?阻塞在何处?为什么会有多种IO模型,分别用来解决问题?常用的框架采用的是何种I/O模型?各种IO模型的优劣势在哪里,适用于何种应用场景...

2020-04-24 13:58:25 68 0

转载 Redis的RDB和AOF持久化策略的区别

aof,rdb是两种 redis持久化的机制。用于crash后,redis的恢复。 rdb的特性如下: Code: fork一个进程,遍历hash table,利用copy on write,把整个db dump保存下来。 save, shutdown, slave 命令会触发这个操作。 粒...

2020-04-18 10:25:56 85 0

原创 Redis有三种集群模式

Redis集群详解 Redis有三种集群模式,分别是: * 主从模式 * Sentinel模式 * Cluster模式 三种集群模式各有特点,关于Redis介绍可以参考这里:NoSQL(二)——Redis Redis官网:https://redis.io/,最新版本5.0.4 ...

2020-04-18 10:23:59 133 0

原创 Linux上elasticSearch的安装和部署流程

elasticsearch的安装和部署流程 1.将elasticsearch-6.6.1上传到服务器指定位置之后进行解压tar -zxvfelasticsearch-6.6.1 /usr/local/elasticsearch-6.6.1 2.将解压后的包放到指定的地方,这里我们放到/usr...

2020-04-08 17:06:39 89 0

原创 Hadoop3.2.1版本的环境搭建(伪分布式模式)

Hadoop的安装包括3中模式: (1)单机模式:只在一台机器上运行,存储采用本地文件系统,没有采用分布式文件系统HDFS。 (2)伪分布式模式:存储采用分布式文件系统HDFS,但是HDFS的节点和数据节点都在同一节点。 (2)分布式模式:存储采用分布式文件系统HDFS,而且HDFS的节点和数据节...

2020-04-08 14:03:04 299 0

转载 Hadoop是什么,能干什么,怎么使用

本文档实现目标 希望用比较容易理解的语言解释Hadoop是个什么样的工具,回答Hadoop是什么,能干什么,怎么使用三个问题,尽量不涉及技术细节。 1、Hadoop是什么 1.1、小故事版本的解释 小明接到一个任务:计算一个100M的文本文件中的单词的个数,这个文本文件有若干行,每行有若干...

2020-04-08 11:51:30 35 0

转载 JAVA大数据技术栈列表

2020-04-08 11:18:15 35 0

转载 Java大数据技术栈

大数据技术板块划分 数据采集 flume kafka logstash filebeat ... 数据存储 mysql redis hbase hdfs ... 数据查询 hive impala elasticsearch kylin ... 数据计算 实时计算 s...

2020-04-08 11:15:50 36 0

转载 Hadoop jps各个进程的功能解析

一般如果正常启动Hadoop,我们可以在master上通过jps命令看到以下5个daemons:(单机) [root@master ~]# jps 19803 SecondaryNameNode 19994 TaskTracker 31144 Jps ...

2020-04-08 11:06:23 55 0

原创 Python 操作字符串大全

python字符串操作实方法大合集,包括了几乎所有常用的python字符串操作,如字符串的替换、删除、截取、复制、连接、比较、查找、分割等,需要的朋友可以参考下 1、去空格及特殊符号 s.strip().lstrip().rstrip(',') 2、复制字符串 #str...

2020-04-08 10:19:44 48 0

转载 为什么《阿里巴巴Java开发手册》强制不允许使用Executor创建线程池?

看过《阿里Java开发手册》的你,应该知道 线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。 ThreadPoolExecutor机制 核心构造方法讲解 下面是ThreadP...

2020-03-15 19:45:45 49 0

原创 遇到pycrypto安装错误

Python3.6 安装pip install alipay-sdk-python 遇到pycrypto安装错误: 我本地用的是Windows10系统 提示错误与 Visual Studio 有关,但我本地是已安装了Visual Studio 解决方案: 进行环境变量中用户变量(不...

2020-03-08 21:24:32 147 0

转载 Native、Web App、Hybrid、ReactNative和WEEX的优劣

一句话概要 Native、Web App、Hybrid、ReactNative(后面以RN简称)、WEEX间的异同点 APP常用开发模式【简介】 此处APP为应用,application,并非我们通常讲的手机App常用的几种APP开发模式-脑图 Native App 传统的原生APP...

2020-03-08 10:18:16 141 0

转载 微服务:注册中心ZooKeeper、Eureka、Consul 、Nacos对比

前言 服务注册中心本质上是为了解耦服务提供者和服务消费者。对于任何一个微服务,原则上都应存在或者支持多个提供者,这是由微服务的分布式属性决定的。更进一步,为了支持弹性扩缩容特性,一个微服务的提供者的数量和分布往往是动态变化的,也是无法预先确定的。因此,原本在单体应用阶段常用的静态LB机制就不再适...

2020-03-08 00:58:05 390 0

转载 用zookeeper实现简单的发布订阅功能

发布方Provider的代码 package com.zhuyun.release.subscribe; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.WatchedEvent; import org.a...

2020-03-08 00:57:55 39 0

转载 Eureka 注册中心

服务注册中心是服务实现服务化管理的核心组件,类似于目录服务的作用,主要用来存储服务信息,譬如提供者 url 串、路由信息等。服务注册中心是微服务架构中最基础的设施之一。   在微服务架构流行之前,注册中心就已经开始出现在分布式架构的系统中。Dubbo 是一个在国内比较流行的分布式框架,被大量的中...

2020-03-08 00:57:35 30 0

转载 Nacos,Eureka与ZooKeeper的比较

著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)和P(分区容错性)。由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。在此Zookeeper保证的是CP, 而Eureka则是AP。 3.1 Zookeeper保证CP 当向注册中心查询服务...

2020-03-07 17:19:42 408 0

转载 RabbitMq 6种使用模式

RabbitMQ的5种模式与实例 1.1 简单模式Hello World 功能:一个生产者P发送消息到队列Q,一个消费者C接收 生产者实现思路: 创建连接工厂ConnectionFactory,设置服务地址127.0.0.1,端口号5672,设置用户名、密码、virtual host,...

2020-03-07 16:47:21 50 0

转载 Zookeeper面试题

目录 1. ZooKeeper是什么? 2. ZooKeeper提供了什么? 3. Zookeeper文件系统 4. ZAB协议? 5. 四种类型的数据节点 Znode 6. Zookeeper Watcher 机制 -- 数据变更通知 7. 客户端注册Watcher实现 8. 服...

2020-03-07 16:33:05 57 0

转载 netty案例,netty4.1中级拓展篇九《Netty集群部署实现跨服务端通信的落地方案》

前言介绍 Netty的性能非常好,在一些小型用户体量的socket服务内,仅部署单台机器就可以满足业务需求。但当遇到一些中大型用户体量的服务时,就需要考虑讲Netty按照集群方式部署,以更好的满足业务诉求。但Netty部署集群后都会遇到跨服务端怎么通信,也就是有集群服务X和Y,用户A链接服务...

2020-03-07 12:30:34 28 0

转载 Jdk1.8新特性实战篇(41个案例)

前言 一直想把jdk1.8的新特性整理下,恰好看到老外的git(文后有链接),在这个结构上继续完善了说明和功能,做了41个单元测试案例,方便新人学习。以下内容很干,对于一个萌新小白来说,学习jdk1.8的新特性,基本看一遍就知道个7788了,在熟读两遍最后跟着写一遍,那么在实际项目中就可以运用了...

2020-03-07 12:19:00 86 0

转载 12306”的架构到底有多牛逼

12306 抢票,极限并发带来的思考 虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。 尤其是春节期间,大家不仅使用 12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。 “12306 服务”承受着这个世界上任何秒杀系统都...

2020-03-07 12:15:50 31 0

转载 高性能服务端优化之路

业务场景 达达是全国领先的最后三公里物流配送平台。达达的业务模式与滴滴以及Uber很相似,以众包的方式利用社会闲散人力资源,解决O2O最后三公里即时性配送难题。达达业务主要包含两部分:商家发单,配送员接单配送,如下图所示。 达达的业务规模增长极大,在1年左右的时间从零增长到每天近百万单,给...

2020-03-07 12:05:47 28 0

转载 大数据与BI的区别

BI(Business Intelligence),中文翻译是商务智能,是一套完整的解决方案,用来将组织中现有的数据进行有效的整合,快速准确的提供报表并提出决策依据,帮助组织做出明智的业务经营决策。 大数据(Big Data)是从收集的海量数据中,通过算法将这些来自不同渠道、格式的数据进行直...

2020-03-07 11:54:50 43 0

转载 BI的体系架构及相关技术

一个BI系统为了满足企业管理者的要求,从浩如烟海的资料中找出其关心的数据,必须要做到以下几步: 1)为了整合各种格式的数据,清除原有数据中的错误记录——数据预处理的要求。 2)对预处理过数据,应该统一集中起来——元数据(Meta Data)、数据仓库(Data Warehouse)的要求; ...

2020-03-07 11:50:04 77 0

转载 主流ETL工具

ETL是数据仓库中的非常重要的一环,是承前启后的必要的一步。ETL负责将分布的、导购数据源中的数据如关系数据。平面数据文件等抽取大搜临时的中间层后进行清洗、转换、集成,最后加载到数据仓库货数据集市中,成为联机分析处理(OLAP)、数据挖掘的基础。 主流ETL工具: informatica商业软件...

2020-03-07 11:47:15 35 0

原创 requests.get为什么得到的内容和查看源文件不一样?

由于初学爬虫 尝试着在beausoup库和re正则间来回爬去加强对两种方法的理解 但是利用正则的时候出现了一个这么个问题 源文件打开 找到的元素 在requests.get竟然没有.当我们输出一下html.text时我们发现 竟然和源文件不一样 具体操作如下 headers={'Us...

2020-03-06 22:34:10 463 0

原创 springboot 中CommandLineRunner/ApplicationRunner接口的作用

先看CommandLineRunner 接口的API: package org.springframework.boot; import org.springframework.core.Ordered; import org.springframework.core.annotation.O...

2020-03-06 15:45:10 32 0

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