函数式编程思维在三行代码情书中的应用

2018-05-30
阅读 5 分钟
2.5k
如今主流的编程语言,函数式编程范式或多或少都融入其中成了“标配”,或者说主流语言都在进行函数式方面的扩充,这是一个大趋势。以Java为例,随着 Lambda块 和 Stream API 等这种高阶函数的加持,Java总算是装备了函数式这一利器;博大精深的C++也在2011版的语言标准里加入了Lambda块的支持;再比如前一段时间我初步体验...

Nginx服务器开箱体验

2018-05-26
阅读 5 分钟
1.9k
Nginx是高性能的轻量级WEB服务器,由于其提供HTTP代理和反向代理、负载均衡、缓存等一系列重要特性,从而广泛应用于当今的WEB服务之中,学习其很有必要。笔者也是从一个初学者开始学习并记录,希望后续渐渐深入。

RPC框架实践之:Google gRPC

2018-05-21
阅读 7 分钟
4.6k
gRPC是Google开源的通用高性能RPC框架,它支持的是使用Protocol Buffers来编写Service定义,支持较多语言扩平台并且拥有强大的二进制序列化工具集。与文章《RPC框架实践之:Apache Thrift》 一文中实践的另一种通用RPC框架 Thrift 能通过Generator自动生成对应语言的Service接口类似,gRPC也能 自动地生成 Server和Clien...

RPC框架实践之:Apache Thrift

2018-05-15
阅读 9 分钟
4.3k
RPC(Remote Procedure Call)即 远程过程调用,说的这么抽象,其实简化理解就是一个节点如何请求另一节点所提供的服务。在文章 微服务调用链追踪中心搭建 一文中模拟出来的调用链:ServiceA ---> ServiceB ---> ServiceC 就是一个远程调用的例子,只不过这篇文章里是通过RestTemplate这种 同步调用方式,利用的是...

利用Zipkin追踪Mysql数据库调用链

2018-05-07
阅读 8 分钟
5k
在前面:微服务调用链追踪中心搭建 一文中我们利用Zipkin搭建了一个微服务调用链的追踪中心,并且模拟了微服务调用的实验场景。利用Zipkin的库Brave,我们可以收集一个客户端请求从发出到被响应 经历了哪些组件、哪些微服务、请求总时长、每个组件所花时长 等信息。

Spring Boot应用监控实战

2018-05-02
阅读 5 分钟
4.9k
之前讲过Docker容器的可视化监控,即监控容器的运行情况,包括 CPU使用率、内存占用、网络状况以及磁盘空间等等一系列信息。同样利用SpringBoot作为微服务单元的实例化技术选型时,我们不可避免的要面对的一个问题就是如何实时监控应用的运行状况数据,比如:健康度、运行指标、日志信息、线程状况等等。本文就该问题做...

微服务调用链追踪中心搭建

2018-04-24
阅读 9 分钟
3.7k
一个完整的微服务系统包含多个微服务单元,各个微服务子系统存在互相调用的情况,形成一个 调用链。一个客户端请求从发出到被响应 经历了哪些组件、哪些微服务、请求总时长、每个组件所花时长 等信息我们有必要了解和收集,以帮助我们定位性能瓶颈、进行性能调优,因此监控整个微服务架构的调用链十分有必要,本文将阐述...

Docker容器可视化监控中心搭建

2018-04-17
阅读 4 分钟
4.2k
一个宿主机上可以运行多个容器化应用,容器化应用运行于宿主机上,我们需要知道该容器的运行情况,包括 CPU使用率、内存占用、网络状况以及磁盘空间等等一系列信息,而且这些信息随时间变化,我们称其为时序数据,本文将实操 如何搭建一个可视化的监控中心 来收集这些承载着具体应用的容器的时序信息并可视化分析与展示!

SpringBoot应用Docker化

2018-04-12
阅读 3 分钟
2.7k
当下web服务端开发中最火的名词中绝对有微服务的一席之地,其也成为当下互联网后端服务架构演进历程中最闪亮的技术之一。微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些应用可独立地进行开发、管理和加速。在分散的组件中使用微服务云架构和平台,使部署、管理和服务功能交付变得更加简单。既然服务被分割...

SpringBoot优雅编码之:Lombok加持

2018-04-09
阅读 6 分钟
4.4k
Lombok 通过提供简单的语法注解形式来帮助简化消除一些必须有但显得很臃肿的 java 代码。典型的是对于 POJO对象的简化(如自动帮我们生成Setter和Getter等),有了Lombok的加持,开发人员可以免去很多重复且臃肿的操作,极大地提高java代码的信噪比,因此我们必须尝试并应用起来!

利用ELK搭建Docker容器化应用日志中心

2018-04-03
阅读 3 分钟
5.7k
应用一旦容器化以后,需要考虑的就是如何采集位于Docker容器中的应用程序的打印日志供运维分析。典型的比如 SpringBoot应用的日志 收集。本文即将阐述如何利用ELK日志中心来收集容器化应用程序所产生的日志,并且可以用可视化的方式对日志进行查询与分析,其架构如下图所示:

Spring Boot日志框架实践

2018-03-29
阅读 9 分钟
6.8k
概述 Java应用中,日志一般分为以下5个级别: ERROR 错误信息 WARN 警告信息 INFO 一般信息 DEBUG 调试信息 TRACE 跟踪信息 Spring Boot使用Apache的Commons Logging作为内部的日志框架,其仅仅是一个日志接口,在实际应用中需要为该接口来指定相应的日志实现。 SpringBt默认的日志实现是Java Util Logging,是JDK自带的...

利用K8S技术栈打造个人私有云(连载之:私有云客户端打造)

2018-03-23
阅读 3 分钟
2.2k
【利用K8S技术栈打造个人私有云系列文章目录】 利用K8S技术栈打造个人私有云(连载之:初章) 利用K8S技术栈打造个人私有云(连载之:K8S集群搭建) 利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手) 利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验) 利用K8S技术栈打造个人私有云(连载之:资源控...

Pipeline As Code With Jenkins2.0

2018-03-20
阅读 6 分钟
2.7k
所谓Pipeline,简单来说,就是一套运行于Jenkins上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂发布流程

Groovy初体验:构建高性能JVM应用

2018-03-14
阅读 3 分钟
3k
Groovy运行于JVM之上,然而其对动态语言、函数式编程范式以及元编程功能的加持所带来的表现力和简洁性可以说甩了Java几条街。我们可以利用Groovy的所有动态功能构建高性能的JVM应用、将开发效率提高几个数量级! 这就是我们为什么要学它!

利用K8S技术栈打造个人私有云(连载之:K8S资源控制)

2018-03-05
阅读 4 分钟
3.3k
【利用K8S技术栈打造个人私有云系列文章目录】 利用K8S技术栈打造个人私有云(连载之:初章) 利用K8S技术栈打造个人私有云(连载之:K8S集群搭建) 利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手) 利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验) 利用K8S技术栈打造个人私有云(连载之:资源控...

你可能没有细究过的TCP/IP

2018-02-28
阅读 2 分钟
1.4k
作为互联网时代伟大发明的TCP/IP技术可以说对当今时代产生了深刻的影响。经过近一个月的学习摸索,基本清楚了TCP/IP的面貌。由于TCP/IP在OS中位于内核态,很多细节其实用户无法感知,所以自己对于TCP/IP会有一些疑惑。关于其中几个点经过查阅一些书籍、博客并结合自己的一些理解,在此整理精炼成帖。

利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验)

2018-02-22
阅读 3 分钟
2.4k
【利用K8S技术栈打造个人私有云系列文章目录】 利用K8S技术栈打造个人私有云(连载之:初章) 利用K8S技术栈打造个人私有云(连载之:K8S集群搭建) 利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手) 利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验) 利用K8S技术栈打造个人私有云(连载之:资源控...

利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手)

2018-02-08
阅读 6 分钟
2.8k
【利用K8S技术栈打造个人私有云系列文章目录】 利用K8S技术栈打造个人私有云(连载之:初章) 利用K8S技术栈打造个人私有云(连载之:K8S集群搭建) 利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手) 利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验) 利用K8S技术栈打造个人私有云(连载之:资源控...

Java编程思想学习录(连载之:异常)

2018-02-06
阅读 8 分钟
1.3k
Thinking in java系列博文目录: Java编程思想学习录(连载之:一切都是对象) Java编程思想学习录(连载之:初始化与清理) Java编程思想学习录(连载之:内部类) Java编程思想学习录(连载之:异常) 本篇文章将讲述关于异常的相关知识 注: 本文首发于 My 公众号 CodeSheep ,可 长按 或 扫描 下面的 小心心 来订阅 ...

利用K8S技术栈打造个人私有云(连载之:K8S集群搭建)

2018-02-01
阅读 9 分钟
2.6k
最近被业务折腾的死去活来,实在没时间发帖,花了好多个晚上才写好这篇帖子,后续会加油的! 【利用K8S技术栈打造个人私有云系列文章目录】 利用K8S技术栈打造个人私有云(连载之:初章) 利用K8S技术栈打造个人私有云(连载之:K8S集群搭建) 利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手) 利用K8S技术栈...

初探Kotlin+SpringBoot联合编程

2018-01-23
阅读 6 分钟
2.4k
Kotlin是一门最近比较流行的静态类型编程语言,而且和Groovy、Scala一样同属Java系。Kotlin具有的很多静态语言特性诸如:类型判断、多范式、扩展函数、模式匹配等等让我无法只作为一个吃瓜群众了,所以稍微花了点时间了解了一下该语言。

Java编程思想学习录(连载之:内部类)

2018-01-21
阅读 7 分钟
1.6k
用thinkpad打字确实很爽啊! Thinking in java系列博文目录: Java编程思想学习录(连载之:一切都是对象) Java编程思想学习录(连载之:初始化与清理) Java编程思想学习录(连载之:内部类) Java编程思想学习录(连载之:异常) 注: 本文首发于 My 公众号 CodeSheep ,可 长按 或 扫描 下面的 小心心 来订阅 ↓ ↓ ↓ ...

为Hexo博客添加LiveRe评论系统

2018-01-20
阅读 3 分钟
3.9k
最近有些网友问我,我的个人博客中的评论系统是怎么添加的,说实话我都有点忘了,毕竟搞了有好长一段时间了,唉不得不说这个遗忘得真是很快。今天正好有时间,我就把如何为自己的Hexo博客添加评论系统写一篇水文好了。

Elastic Search搜索引擎在SpringBoot中的实践

2018-01-09
阅读 8 分钟
3.6k
注: 本文首发于 My 公众号 CodeSheep ,可 长按 或 扫描 下面的 小心心 来订阅 ↓ ↓ ↓ 实验环境 ES版本:5.3.0 spring bt版本:1.5.9 首先当然需要安装好elastic search环境,最好再安装上可视化插件 elasticsearch-head来便于我们直观地查看数据。 当然这部分可以参考本人的帖子:《centos7上elastic search安装填坑记...

centos7上elastic search安装填坑记

2018-01-08
阅读 4 分钟
2.1k
注: 本文首发于 My 公众号 CodeSheep ,可 长按 或 扫描 下面的 小心心 来订阅 ↓ ↓ ↓ 下载elastic search 5.3.0 {代码...} 启动ES {代码...} 按照道理应该就可以了,然而接下来各种坑一一出现,分别阐述 错误1:error='Cannot allocate memory' (errno=12) solutions:由于elasticsearch5.0默认分配jvm空间大小为2g,需...

Docker Swarm集群初探

2018-01-04
阅读 7 分钟
1.7k
相信Docker技术大家都有所了解,单个Docker能发挥的作用毕竟有限,也不便于管理,所以Docker得组集群来使用才能发挥强大的技术优势。既然要组集群那就涉及诸如Docker的资源调度、管理等等一系列问题。目前涉及Docker集群的三个主要的技术无外乎Swarm、Kubernetes、Mesos三种。从本文开始作者将会一一实践这几种主要的Doc...

Java编程思想学习录(连载之:初始化与清理)

2018-01-03
阅读 3 分钟
1.2k
注: 本文首发于 My 公众号 CodeSheep ,可 长按 或 扫描 下面的 小心心 来订阅 ↓ ↓ ↓ 关于构造器与初始化 无参构造器 = 默认构造器 = 自己未写编译器帮忙自动创建的 若自行定义了构造器(无论参数有否),编译器便停止默认创建动作 类里的对象引用默认初始化为null,基本类型初始化为0 构造器也是类的静态方法!!! 四...