容器技术

b993a534-0b19-431f-b9fb-27724450d367.png

kubewatch

kubewatch是一个用 Go 编写并由 Bitnami Labs 开发的开源 Kubernetes 资源监控观察器。它监视指定的 Kubernetes 资源的更改,再通过handler 将这些变化以通知的形式发布到可用的渠道,例如Slack、Hipchat 等。也可以在应用程序中通过Webhook 的方式来收听kubewatch 发出的状态变化通知。

- Read More -
JAVA,DevOps

1617546202(1).jpg

Liquibase还是Flyway
Flyway和Liquibase都支持专业数据库重构和版本控制所需的所有功能,因此您将始终知道要处理的数据库模式的版本以及它是否与软件版本匹配。两种工具都集成在Maven或Gradle构建脚本中以及Spring Boot生态系统中,因此您可以完全自动化数据库重构。

Flyway使用SQL定义数据库更改,因此您可以定制SQL脚本,使其与基础数据库技术(例如Oracle或PostgreSQL)良好地配合使用。另一方面,使用Liquibase,您可以通过使用XML,YAML或JSON来定义数据库更改来引入抽象层。因此,Liquibase更适合在具有不同基础数据库技术的不同环境中安装的软件产品中使用。但是,如果您想完全控制SQL,Flyway是首选工具,因为您可以使用完全定制的SQL甚至Java代码来更改数据库。

多种数据源的情况下使用Liquibase会更加合适,不需要维护多种数据库脚本,和学习多种数据库语言,Liquibase对于大型项目更加友好。

- Read More -
架构

1613017326536.jpg

简介

HTTP代表(Hyper Text Transfer Protocol)超文本传输协议。是一种用于分布式、协作式和超媒体信息系统的应用层协议。网络协议很多种,HTTP是万维网的数据通信的基础。

1996年,HTTP1.0协议规范RFC1945发布.

1999年,HTTP1.1协议规范RFC2616发布.

2015年,HTTP/2协议规范RFC7540/7541发布.

*HTTP/2还没达到普及的程度,目前主流的协议还是HTTP1.1.

- Read More -
消息队列

image.png

RabbitMQ是使用Erlang语言编写,实现了高级消息队列协议(AMQP)的一款消息中间件

AMQP是什么?
AMQP(Advanced Message Queuing Protocol 高级消息队列协议)是一个网络协议。它支持符合要求的客户端应用(application)和消息中间件代理(messaging middleware broker)之间进行通信。其设计目标是对于消息的排序、路由(包括点对点和订阅-发布)、保持可靠性、保证安全性.AMQP规范了消息传递方和接收方的行为,以使消息在不同的提供商之间实现互操作性,就像SMTP,HTTP,FTP等协议可以创建交互系统一样

- Read More -
Prometheus

8a1ebbd7-a7da-4ff6-b89b-82aa7a482bf7.png

1:Prometheus简介:
既是一个时序数据库,又是一个监控系统,更是一套开源的完备监控生态解决方案。

Prometheus受启发于Google的Brogmon监控系统,从2012年开始由前Google工程师在Soundcloud以开源软件的形式进行研发,并且于2015年早期对外发布早期版本。2016年5月继Kubernetes之后成为第二个正式加入CNCF基金会的项目,同年6月正式发布1.0版本。2017年底发布了基于全新存储层的2.0版本,能更好地与容器平台、云平台配合。

- Read More -
代码设计

自述: 整洁代码是十分有必要的,在平时的编程工作中,基本上更多的时间是花在阅读别人的代码上面,写出优雅整洁的代码这正是我们所需要的.

一切的原则:容易理解的代码

1:Bjarne Stroustrup ,C++发明者:我喜欢优雅和高效的代码。代码逻辑应当直截了当,叫缺陷难以隐藏;尽量减少依赖关系,使之便于维护;依据某种分层战略完善错误处理代码;性能调至最优,省得引诱别人做没规矩的优化,搞出一堆混乱来。整洁的代码只做好一件事。

2:Ron c#(c#极限编程探索)作者
简单的代码,依其重要顺序:
能通过所有测试;
没有重复的代码;
体现系统中的全部设计理念;
包含尽量少的实体,比如类,方法,函数等。

- Read More -
This is just a placeholder img.