7 击水三千里

尚未进行身份认证

没人会把我们变的越来越好,时间也只是陪衬。支撑我们变的越来越好的是我们自己不断进阶的才华,修养,品行以及不断的反思和修正

等级
博文 110
排名 3w+

Spring Cloud知识要点

SpringCloud框架组件服务发现——NetflixEureka断路器——NetflixHystrix服务网关——NetflixZuul声明式服务调用——SpringCloudFegiin分布式配置——SpringCloudConfig客服端负载均衡——NetflixRibbon消息驱动——SpringCloudStream分布式服务追踪—...

2019-07-17 08:45:34

Kafka原理的探究

1.kafka吞吐量高的原因1、页缓存技术+磁盘顺序写操作系统本身有一层缓存,叫做pagecache,是在内存里的缓存,我们也可以称之为oscache,意思就是操作系统自己管理的缓存。你在写入磁盘文件的时候,可以直接写入这个oscache里,也就是仅仅写入内存中,接下来由操作系统自己决定什么时候把oscache里的数据真的刷入磁盘文件中接着另外一个就是kafka...

2019-07-16 11:35:45

OAuth2.0授权流程

关于OAuth2.0协议的授权流程可以参考下面的流程图其中Client指第三方应用,ResourceOwner指用户,AuthorizationServer是我们的授权服务器,ResourceServer是API服务器。解释一下上述流程:(A)用户打开客户端以后,客户端要求用户给予授权。(B)用户同意给予客户端授权。(C)客户端使用上一步获得的授权,向认证服务器申请令牌。...

2019-07-12 15:29:42

Spring Boot中Servlet启动原理

启动过程及原理----------------------------------创建IOC容器---------------------------1springboot应用启动运行run方法2createApplicationContext():创建IOC容器,如果是web应用则创建AnnotationConfigEmbeddedWebApplacation的IOC容器,...

2019-07-12 12:38:44

Kubernetes基础知识详解

Docker-ComposeDockerSwarm和Kubernetes的区别Docker-ComposeDocker-Compose是用来管理你的容器的,有点像一个容器的管家,想象一下当你的Docker中有成百上千的容器需要启动,如果一个一个的启动那得多费时间。有了Docker-Compose你只需要编写一个文件,在这个文件里面声明好要启动的容器,配置一些参数,执行一下这个文件,D...

2019-07-09 08:28:37

Spark基础知识

1、Spark编程模型1.1术语定义应用程序(Application):基于Spark的用户程序,包含了一个DriverProgram和集群中多个的Executor;驱动程序(DriverProgram):运行Application的main()函数并且创建SparkContext,通常用SparkContext代表DriverProgram;执行单元(Executor...

2019-07-09 08:20:20

MangoDB基础架构学习笔记

Mongodb的概念mongodb是文档数据库,存储的是文档(Bson->json的二进制化).特点:内部执行引擎为JS解释器,把文档存储成bson结构,在查询时,转换为JS对象,并可以通过熟悉的js语法来操作.mongo和传统型数据库相比,最大的不同:传统型数据库:结构化数据,定好了表结构后,每一行的内容,必是符合表结构的,就是说--列的个数,类型都一样...

2019-07-08 20:02:13

Docker网络高级知识

容器访问控制容器的访问控制,主要通过Linux上的iptables防火墙来进行管理和实现。iptables是Linux上默认的防火墙软件,在大部分发行版中都自带。容器访问外部网络容器要想访问外部网络,需要本地系统的转发支持。在Linux系统中,检查转发是否打开。$sysctlnet.ipv4.ip_forwardnet.ipv4.ip_forward=1...

2019-07-08 07:28:17

Linux命令管道工作原理与使用方法

一、管道定义管道是一种两个进程间进行单向通信的机制。因为管道传递数据的单向性,管道又称为半双工管道。管道的这一特点决定了器使用的局限性。管道是Linux支持的最初UnixIPC形式之一,具有以下特点:***数据只能由一个进程流向另一个进程(其中一个读管道,一个写管道);如果要进行双工通信,需要建立两个管道。***管道只能用于父子进程或者兄弟进程间通信。,也就是说管道只能用于具有...

2019-07-03 00:39:22

58同城Mysql使用规范30条军规

一、基础规范(1)必须使用InnoDB存储引擎解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高(2)必须使用UTF8字符集UTF-8MB4解读:万国码,无需转码,无乱码风险,节省空间(3)数据表、数据字段必须加入中文注释解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的(4)禁止使用存储过程、视图、触发器、Event解读:高并发大数据的互联网业务...

2019-07-02 23:45:37

关于Cron 表达式的解惑

00/10***与0*/10***的差别在于什么地方?0代表从0分开始,*代表任意字符,/代表递增。也就是说00/10***代表从0分钟开始,每10分钟执行任务一次。00/10***代表从任务启动开始每10分钟执行任务一次。有人会问,这不是一样的么?答案是不一样的。因为起始的时间不一样。例如:从5:07分钟的时候执行该任务第一种写法会在5:10的...

2019-07-02 16:46:35

Mysql的性能优化理论

Mysql体系机构ClientConnectors接入方支持协议很多ManagementServeices&Utilities系统管理和控制工具,mysqldump、mysql复制集群、分区管理等ConnectionPool连接池:管理缓冲用户连接、用户名、密码、权限校验、线程处理等需要缓存的需求SQLInterfaceS...

2019-06-04 08:10:42

Canal底层原理和注意事项的介绍

canal的工作原理原理相对比较简单:canal模拟mysqlslave的交互协议,伪装自己为mysqlslave,向mysqlmaster发送dump协议 mysqlmaster收到dump请求,开始推送binarylog给slave(也就是canal) canal解析binarylog对象(原始为byte流)server代表一个canal运行实例,对应于一个j...

2019-05-15 16:30:03

Gson, FastJson, Jackson, Json-lib性能对比

四个库的工具类FastJsonUtil.javapublicclassFastJsonUtil{publicstaticStringbean2Json(Objectobj){returnJSON.toJSONString(obj);}publicstatic<T>Tjson2Bean(Stringj...

2019-05-15 11:56:49

ELK架构的应用与研究

ELK解决哪些问题?在项目初期的时候,大家都是赶着上线,一般来说对日志没有过多的考虑,当然日志量也不大,所以用log4j就够了,随着应用的越来越多,日志散落在各个服务器的logs文件夹下,确实有点不大方便。当我们需要日志分析的时候你大概会这么做:直接在日志文件中grep、awk就可以获得自己想要的信息。ELK因此就应运而生,那么为什么要用ELK呢?ELK又能给我们解决哪些问题呢?...

2019-05-10 14:47:36

ES聚合查询在基本语法

以下代码均在Kibana的devtools下执行1、创造数据POST/test_aggs/infos/1?pretty{ "title":"testclass01", "price":20, "desc":["good","very","handsome"]}POST/test_aggs/infos/2?pretty{ "title":"tes...

2019-05-04 23:17:25

Canal源码分析之启动时处理逻辑和主备切换机制

canal主备切换机制架构图源码分析Canal的版本是1.0.3,先找到程序的入口点/***canal独立版本启动的入口类**/publicclassCanalLauncher{...publicstaticvoidmain(String[]args){try{...

2019-04-25 11:36:04

服务发现框架Consul的使用

分布式系统的三个指标Consistency Availability Partitiontolerance它们的第一个字母分别是C、A、P。由于当前的网络硬件肯定会出现延迟丢包等问题,所以分区容错性是我们必须需要实现的一致性和可用性,不可能同时成立。这个结论就叫做CAP定理。服务发现框架的比较Feature Consul ...

2019-04-12 18:26:22

TreeMap深入浅出源码分析Java8

二叉查找树红黑树的起源得从二叉查找树(二叉排序树)说起。先来看二叉查找树的定义:1、要么为一颗空树,要么就是一颗具有如下特性的二叉树。2、左子节点的值必须小于等于父节点的值。3、右子节点的值必须大于等于父节点的值。每个节点都符合这个特性,所以易于查找,如下图:平衡二叉树定义:1、要么为一颗空树,要么就是一颗具有如下特性的二叉树。2、它的左子树和右子树都是平衡...

2019-04-09 22:17:15

Java面试知识栈

目录基础java基础jvm多线程jdk1.7源码开源框架与技术tomcatspringnettydubbozookeepermybatiselasticsearchkafkanginxspringbootspringcloud网络httptcp架构系统架构数据架构分布式、高并发系统设计、设计模式...

2019-04-08 18:43:23
奖章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。