- 博客(21)
- 资源 (16)
- 收藏
- 关注
转载 Flume原理解析
flume 作为 cloudera 开发的实时日志收集系统,受到了业界的认可与广泛应用。Flume 初始的发行版本目前被统称为 Flume OG(original generation),属于 cloudera。但随着 FLume 功能的扩展,Flume OG 代码工程臃肿、核心组件设计不合理、核心配置不标准等缺点暴露出来,尤其是在 Flume OG 的最后一个发行版本 0.9.4. 中,日。
2019-04-24 19:52:07 652 1
原创 Mysql锁机制
1. 概述1.1 定义 锁时计算机协调多个进程或线程并发访问某一资源的机制。 在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。1.2 应用当然这里是举个...
2019-04-24 17:36:29 111
转载 MySQL的四种事务隔离级别
本文实验的测试环境:Windows 10+cmd+MySQL5.6.36+InnoDB目录一、事务的基本要素(ACID)二、事务的并发问题三、MySQL事务隔离级别四、用例子说明各个隔离级别的情况 1、读未提交: 2、读已提交 3、可重复读 4、串行化 补充:一、事务的基本要素(ACID) 1、原子性(Atomicit...
2019-04-24 11:23:23 119
转载 微服务下的数据一致性的几种实现方式
目录1. 传统应用的事务管理1.1 本地事务1.2 分布式事务2. 微服务下的事务管理3. 实现微服务下数据一致性的方式3.1 可靠事件通知模式3.2 最大努力通知模式3.3 业务补偿模式3.4 TCC/Try Confirm Cancel模式3.5 总结1. 传统应用的事务管理1.1 本地事务再介绍微服务下的数据一致性之前,先简单地介绍一...
2019-04-22 17:56:52 7253 3
转载 缓存穿透,缓存雪崩,缓存击穿解决方案分析
目录前言缓存穿透缓存雪崩缓存击穿总结前言设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有...
2019-04-22 15:53:01 133
转载 批处理和流处理
目录Apache Storm Apache SamzaApache SparkApache Flink 大数据是收集、整理、处理大容量数据集,并从中获得见解所需的非传统战略和技术的总称。虽然处理数据所需的计算能力或存储容量早已超过一台计算机的上限,但这种计算类型的普遍性、规模,以及价值在最近几年才经历了大规模扩展。 本文将介绍大...
2019-04-22 14:54:18 1730
原创 Golang错误和异常处理的正确姿势
序言错误和异常是两个不同的概念,非常容易混淆。很多程序员习惯将一切非正常情况都看做错误,而不区分错误和异常,即使程序中可能有异常抛出,也将异常及时捕获并转换成错误。从表面上看,一切皆错误的思路更简单,而异常的引入仅仅增加了额外的复杂度。但事实并非如此。众所周知,Golang遵循“少即是多”的设计哲学,追求简洁优雅,就是说如果异常价值不大,就不会将异常加入到语言特性中。错误和异常处理是程序...
2019-04-22 10:57:36 4689
转载 Go - Micro微服务框架实践 - 常见问题
目录什么是 Micro ?Micro是开源的社区生态系统该从何入手micro有哪些使用者如何才能使用micro除了Consul,可以使用其它的注册中心吗Etcd零依赖Micro可以在哪些环境运行API、Web、SRV 服务之间的区别是什么API 服务Web 服务SRV 服务Micro的性能如何Micro支持gRPC吗Mi...
2019-04-20 21:44:14 2268
原创 Hbase实践之结合Spring
1. 依赖包: 见Hbase实践2.HbaseService接口package com.rz.hservice;import java.io.IOException;import java.util.List;import java.util.Map;import org.apache.hadoop.hbase.client.Result;import com.rz....
2019-04-19 15:50:34 308 1
原创 Linux常用操作命令
* 查看前缀为.的隐藏文件:在界面下一般看不到它,使用ls -a 或 ll -a 可以看见它* 给文件赋权限chmod -R 665 xxx.sh 或 chmod +x xxx.sh* Vim操作在命令模式下(ctrl+c)1. 删除行: 按"dd"2. 插入或编辑: 按"i"3. 单行复制:光标移动到将要复制的行处,按“yy”进行复制4. 多行...
2019-04-19 15:17:41 229
原创 Kafka实践
以下命令示范在kafka版本为0.10.1.0下进行。* 查看kafka版本 kafka没有提供version命令,不确定是否有方便的方法,但你可以进入kafka/libs文件夹。你应该看到像kafka_2.11-0.10.1.0.jar这样的文件,其中2.11是Scala版本,0.10.1.0是Kafka版本。 链文* 启动 Kafka使用ZooKeeper,...
2019-04-10 18:04:36 427
原创 Hbase实践
1. 依赖包: <!-- HADOOP 依赖 --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.6.0</...
2019-04-09 17:29:52 478
原创 Java线程池,你应当知道这些
Java面试中,线程池也算是一个高频的问题,其实就JDK源码来看线程池这一块的实现代码应该算是写的清晰易懂的,通过这篇文章,我们就来盘点一下线程池的知识点。本文基于JDK1.8源码进行分析首先看下线程池构造函数:public ThreadPoolExecutor(int corePoolSize, int maxi...
2019-04-08 19:43:40 102
转载 Redis事务
MULTI、EXEC、DISCARD和WATCH是 Redis 事务相关的命令。事务可以一次执行多个命令, 并且带有以下两个重要的保证: 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。 EXEC命令负责触发并...
2019-04-08 19:40:51 114
转载 Redis 持久化
Redis 提供了不同级别的持久化方式:RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储. AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以redis协议追加保存每次写的操作到文件末尾.Redis还能对AOF文件进行后台重写,使得AOF文件的体积不至于过大. 如果你只希望你的数据在服务器运行的时候存在,你也可以不...
2019-04-08 17:42:50 116
原创 Spring Boot 优雅的配置拦截器,实现权限管理
其实spring boot拦截器的配置方式和springMVC差不多,只有一些小的改变需要注意下就ok了。下面主要介绍两种常用的拦截器:一、基于URL实现的拦截器:关键代码:path.matches(Const.NO_INTERCEPTOR_PATH 就是基于正则匹配的url。二、基于注解的拦截器①创建注解:②创建拦截器:三、把拦截器...
2019-04-07 00:26:08 5180 1
转载 Java13都要来了,你还不了解Java8的新(旧)特性?
Java如今的版本迭代速度简直不要太快,一不留神,就错过了好几个版本了。官方版本虽然已经更新到Java12了,但是就目前来说,大多数Java系统还是运行在Java8上的,剩下一部分历史遗留系统还跑在Java7,甚至Java6上。我刚学Java的时候,正好处于Java7版本末期,彼时已经有很多关于Java8新特性的风声,当时作为初学者,其实对此关注不多,只是依稀记得“lambda表达式”、“函数式编...
2019-04-07 00:03:50 8793
转载 分布式锁原理-redis分布式锁,zookeeper分布式锁
首先分布式锁和我们平常讲到的锁原理基本一样,目的就是确保,在多个线程并发时,只有一个线程在同一刻操作这个业务或者说方法、变量。在一个进程中,也就是一个jvm 或者说应用中,我们很容易去处理控制,在jdk java.util 并发包中已经为我们提供了这些方法去加锁, 比如synchronized 关键字 或者Lock 锁,都可以处理。但是我们现在的应用程序如果只部署一台服务器,那并发量...
2019-04-07 00:01:44 175
原创 网站高并发大流量访问的10个处理及解决方案
1.硬件升级普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题 ,否则怎么优化都不可能彻底解决性能问题。2.负载均衡它是根据某种负载策略把请求分发到集群中的每一台服务器上,让整个服务器群来处理网站的请求。公司比较有钱的,可以购买专门负责负载均衡的硬件(如:F5),效果肯定会很好。对于大部分公司,会选择廉价...
2019-04-06 23:58:51 918
转载 今日头条 Go 建千亿级微服务的实践
今日头条当前后端服务超过80%的流量是跑在 Go 构建的服务上。微服务数量超过100个,高峰 QPS 超过700万,日处理请求量超过3000亿,是业内最大规模的 Go 应用。Go 构建微服务的历程在2015年之前,头条的主要编程语言是 Python 以及部分 C++。随着业务和流量的快速增长,服务端的压力越来越大,随之而来问题频出。Python 的解释性语言特性以及其落后的多进程服务模型受...
2019-04-06 23:55:47 302
原创 Redis数据库存储Session来保存当前用户信息
HTTP协议的无状态特性(对业务处理没有记忆能力)导致如果后续处理需要前面的信息,则它必须重传前面信息。这也导致每次链接传送的数据量增大。为了克服HTTP协议的这个缺点,出现了两种用于保持HTTP链接状态的技术Cookie和Session。一. Cookie Cookie最早是网景公司的前雇员Lou Montulli在1993年3月的发明。Cookie是由服务器端生成,发送给U...
2019-04-06 23:15:10 8733
flume-interceptor-1.0.0-jar-with-dependencies.jar
2022-01-03
Dcoker技术入门与实战&Docker; 容器与容器云(第2版)
2018-08-15
eclipse样式文件
2018-05-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人