- 博客(26)
- 资源 (3)
- 收藏
- 关注
原创 JDK8新特性一篇概述
JDK8发布已经近5年了,已经不再是新鲜事物了。其他人我不清楚,但就我而言,虽然一直环境是JDK8,但确基本上没用JDK8的什么特性,是时候系统学一下开始使用了。Java编程语言lambdaJDK8最大的特性应该非lambda莫属,该特性让你可以将功能视为方法参数,或者代码视为数据。使用lambda表达式,你可以更简洁地表示单方法接口(功能接口)实例。如示例:new Thread(new...
2019-03-21 13:57:58
2227
原创 spring boot源码解析(三)Environment和Profile源码解析
前言之前讲到了application run listener,但没有展开讲spring内置的listener拎出来讲,spring很多动作就是在内置的listener中随容器启动时候做的。后续我们再列举说明,这篇先学下spring里面的Environment。Environment是spring中一个抽象,简单理解保存的是spring中所有的环境配置数据。从接口来看主要包含两个概念,一个pr...
2019-03-19 15:57:21
941
原创 spring boot源码解析(二)番外篇spring application listener自定义扩展
前言这篇作为番外篇,在第二篇学习后,进行自定义实现一些接口实现,更好的理解其过程。扩展实现SpringApplicationRunListener自定义SpringApplicationRunListener接口实现:public class CustomSpringApplicationRunListener implements SpringApplicationRunListene...
2019-03-18 18:16:57
428
原创 spring boot源码解析(二)spring application listener机制和启动加载流程
前言上篇我们介绍了SpringApplication.run过程包含的大致内容,这篇我们细节讲下run里面的SpringApplicationRunListeners过程。从代码我们可以看到listeners的主要使用或引用的点:getRunListenersstartingprepareEnvironmentprepareContextstartedhandleRunFail...
2019-03-18 13:40:50
755
原创 spring boot源码解析(一)spring boot启动类SpringApplication
题外话因工作原因,陆续开始接触spring boot,且对其源码和机制越来越发的需要深入了解。所以想系统的分析下spring boot源码,希望可以检查下去。spring boot启动@SpringBootApplicationpublic class SimpleApplication { public static void main(String[] args) { Spri...
2019-03-14 15:02:29
1108
原创 说说阿里云大规模宕机
背景云服务市场是一块大蛋糕,从如今的各大巨头都纷纷出手想分得一杯羹就能看出。而国内巨头阿里爸爸早在2009年就看准了时机,这里当然少不了要提到阿里云创始人:王坚。破釜沉舟的方式用命换来的成就,阿里每年投入10亿,一投就是10年。不得不服王坚和马云当初的坚持和眼光。从上面几张图就能看出来,这利润真的是杠杠的。当然也不得不说云计算改变了如今互联网行业服务的环境和运维模式,从传统的主机、服务器...
2019-03-07 17:27:45
3020
转载 Mysql数据库规范(58到家)
基础规范表存储引擎必须使用InnoDB表字符集默认使用utf8,必要时候使用utf8mb4解读:(1)通用,无乱码风险,汉字3字节,英文1字节(2)utf8mb4是utf8的超集,有存储4字节例如表情符号时,使用它禁止使用存储过程,视图,触发器,Event解读:(1)对数据库性能影响较大,互联网业务,能让站点层和服务层干的事情,不要交到数据库层(2)调试,排错,迁移都比较困难...
2019-03-05 17:59:33
409
转载 历时3年,美图全面容器化踩过的坑
美图从 2016 年开始了容器相关的探索到 2018 年业务基本实现容器化,今天主要会围绕美图的业务情况,聊一聊在容器基础平台建设探索过程中遇见的一些问题,以及具体如何落地的方案,希望可以给大家一些参考。美图公司成立于 2008 年 10 月,怀揣着“成为全球懂美的科技公司”的愿景,创造了一系列软硬件产品,如美图秀秀、美颜相机、短视频社区美拍以及美图拍照手机。美图产品的多样化也催生了复杂多样的...
2019-02-19 16:51:27
612
转载 Netty 消息接收类故障案例分析
背景消息接收类故障尽管 Netty 应用广泛,非常成熟,但是由于对 Netty 底层机制不太了解,用户在实际使用中还是会经常遇到各种问题,大部分问题都是业务使用不当导致的。Netty 使用者需要学习 Netty 的故障定位技巧,以便出了问题能够独立、快速的解决。在各种故障中,Netty 服务端接收不到客户端消息是一种比较常见的异常,大部分场景下都是用户使用不当导致的,下面我们对常见的消息接收...
2019-02-19 14:32:22
6045
转载 C4模型
用于软件架构的 C4 模型关键要点关键要点由于向敏捷转型,软件架构图的使用规模已经大幅缩减。即使有在使用软件架构图,它们往往也混淆不清。C4 模型由一系列分层的软件架构图组成,这些架构图用于描述上下文、容器、组件和代码。C4 图的层次结构提供了不同的抽象级别,每种抽象级别都与不同的受众有关。为了避免出现含糊不清的情况,可以在图中包含足够数量的文本和关键的图例。软件架构图是一种非常好的...
2019-02-14 10:53:00
9340
转载 Lombok 介绍
Lombok使用介绍在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。IDEA中的安装打开IDEA的Setting –> 选择Plugins选项 –> 选择Browse repositories –> 搜索lombok –> 点击安装 –> 安装完成重启IDEA –> 安装成功引入依赖...
2018-12-21 15:40:23
259
原创 默默学Sharding-Sphere(五)
从本篇开始,开始对项目和源码进行一个分析学习。可能存在不准确的地方,望指出。基于版本3.1.0-M1版本。项目结构从项目模块拆分和依赖关系来看,大致我们可以看出各模块的主要职责和特点。sharding-core:核心模块sharding-transaction-core:事务模块核心sharding-jdbc-core:jdbc核心集成模块sharding-transaction-2...
2018-12-21 15:33:07
1135
转载 默默学Sharding-Sphere(四)
前三篇对sharding-sphere产品进行了一个入门学习,这篇转自某博客专栏对sharding-sphere作者的一些问题,加强对sharding-sphere进行一个认识。Q:Sharding-JDBC 的设计初衷是什么?旨在解决什么场景的问题?Sharding-JDBC 的设计初衷是想提供一个数据库中间层,用于透明的处理分库分表,而无需业务开发人员在业务代码中根据分片键生成 SQL。...
2018-12-19 22:36:34
2360
原创 默默学Sharding-Sphere(三)
接上篇,使用文档。使用文档数据分片不使用Spring引入Maven依赖<dependency> <groupId>io.shardingsphere</groupId> <artifactId>sharding-jdbc-core</artifactId> <version>${shardin...
2018-12-19 22:00:21
12732
1
原创 默默学Sharding-Sphere(二)
从上篇了解Sharding-Sphere的一个背景、定位以及规划后,我再去看了下官方文档,发现sharding-sphere活跃还是有原因的,文档一个字:详细。这里我大致拆分成两份:说明文档、使用文档。说明文档背景传统的将数据集中存储至单一数据节点的解决方案,在性能、可用性和运维成本这三方面已经难于满足互联网的海量数据场景。从性能方面来说,由于关系型数据库大多采用B+树类型的索引,在数据量...
2018-12-19 20:53:18
7757
5
转载 默默学Sharding-Sphere(一)
最近在学习sharding-sphere,因为工作上使用到sharding-jdbc和sharding-proxy场景。所以记录下来,以后复习。概念篇Sharding-Sphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(计划中)这3款相互独立的产品组成。 他们均提供标准化的数据分片、分布...
2018-12-19 20:12:49
11679
1
原创 TSF简单体验学习
腾讯分布式服务框架 TSF (Tencent Distributed Service Framework) 是一个围绕应用和微服务的 PaaS 平台,提供服务全生命周期管理能力和数据化运营支持,提供多维度应用、服务、机器的监控数据,助力服务性能优化;拥抱 Spring Cloud 开源社区。概述腾讯分布式服务框架 (Tencent Service Framework) 是一个围绕着应用和微服...
2018-10-17 14:16:42
26307
1
转载 我的java问题排查工具单
我的java问题排查工具单我的问题排查工具箱Linux命令类tailgrepawkfindpgmtsartop其他排查利器btraceGreysjavOSizeJProfiler大杀器eclipseMATzprofilerjava三板斧,噢不对,是七把jpsjstacknative+java栈:jinfojmapjstatjdbCHLSDBplugin of intellij ideakey pr...
2018-10-09 11:35:31
302
原创 默默学K8S(一) kubernetes简介
Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。在Kubenetes中,所有的容器均在Pod中运行,一个Pod可以承载一个或者多个相关的容器,同一个Pod中的容器可以部署在同一个物理机器上并且能够共享资源。一个Pod也可以包...
2018-08-06 15:33:59
866
原创 CentOS 7安装Docker
安装之前需要检查系统内核版本,需要高于3.10,一般CentOS7的话就没啥问题了。uname -r 查看系统版本后,开始安装Docker安装DockerDocker 软件包已经包括在默认的 CentOS-Extras 软件源里。因此想要安装 docker,只需要运行下面的 yum 命令:yum -y install docker-io查看docker版本验证,顺便验...
2018-07-24 18:43:08
114
原创 默默学REDIS(一) 基本介绍
当下Redis火热,应该是个程序员都听过Redis了。这里本人也对其学习一下。Redis(REmote DIctionary Server)是一个key-value的存储系统,基于内存也可持久化使它高效,且减少数据丢失,并提供多种语言的API。Redis特点: ● Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 ● Redis不仅仅...
2018-07-24 13:56:06
299
原创 记-阿里开发手册规范(JAVA)
Java早期版本对IO支持并不完善,直至JDK1.4陆续开始支持IO。 I/O模型简单可分为:阻塞I/O模型非阻塞I/O模型I/O复用模型信号驱动I/O模型异步I/O模型 详细说明参考:Unix网络编程5种模式本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接...
2018-07-14 13:35:40
7458
原创 默默学Netty(一)I/O基础
Java早期版本对IO支持并不完善,直至JDK1.4陆续开始支持IO。 I/O模型简单可分为:阻塞I/O模型非阻塞I/O模型I/O复用模型信号驱动I/O模型异步I/O模型 详细说明参考:Unix网络编程5种模式本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接...
2018-07-02 22:41:24
893
原创 默默学并发(一) 并发概述
并发编程 在程序开发过程中,为了加快程序运行,我们会引入并发编程的概念,并发编程是把双刃剑,好处毋庸置疑,但往往给我们又带来其他的挑战。我们无法忽略这些问题,如果处理不当我们的程序不仅无法获得想要的效果,甚至引起致命的问题。引入线程加快程序运行? 线程运行在cpu上,无法一个cpu分配给一个线程,cpu通过分配每个线程cpu时间片来实现。跑完一个任务时间片,然后保存该任...
2018-05-24 21:35:34
208
转载 Unix网络编程5种IO模型
IO模型用一幅图表示所支持的I/O模型纵向维度是“阻塞(Blocking)”、“非阻塞(Non-blocking)”;横向维度是“同步”、“异步”。总结起来是四种模型 同步阻塞、同步非阻塞;异步阻塞、异步非阻塞 。《Unix网络编程》中划分出了“第五种”模型——“信号驱动式IO”其实属于异步阻塞类型,这种模型的通知方式有多种多样后面展开说明。同步/异步、阻塞/非阻塞从内核角度看I/O操作分为两步:用
2017-10-23 20:49:25
2388
2
elasticsearch-2.1.0
2016-10-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人