docker 基础备忘

Docker 已经不是什么新鲜的事物了,Docker 崛起的核心是因为 Docker 镜像的存在,这个创新使得 Docker 在短短几年内就可以迅速地改变了整个云计算领域的发展历程。Docker 镜像的存在解决了传统 paas 平台对于打包问题的根本难题,使得“压缩包”赋予了一种极其宝贵的能力:本地环境和云端环境的高度一致!

阅读更多

Linux 中的 namespace

基本介绍

namespace 是 Linux 内核用来隔离内核资源的方式。通过 namespace 可以让一些进程只能看到与自己相关的一部分资源,而另外一些进程也只能看到与它们自己相关的资源,这两拨进程根本就感觉不到对方的存在。具体的实现方式是把一个或多个进程的相关资源指定在同一个 namespace 中。

Linux namespaces 是对全局系统资源的一种封装隔离,使得处于不同 namespace 的进程拥有独立的全局系统资源,改变一个 namespace 中的系统资源只会影响当前 namespace 里的进程,对其他 namespace 中的进程没有影响。

阅读更多

maven 中 repository 是如何工作的

本文中,我们将来看下如何在 maven 项目中定义和解决依赖关系,然后深入研究 maven 存储库如何使这些依赖关系可供使用的。

阅读更多

yum 指令

yum(Yellowdog Updater Modified):是一个基于 RPM 的软件包管理器,能够从指定服务器自动下载RPM包并且安装,可以处理软件之间的依赖关系,一次性安装所有依赖的软件包,无需一个个下载安装。

工作原理示意图

yum 客户端及服务器的工作原理如下图所示

阅读更多

JVM 性能调优监控工具

本篇主要学习记录下工作中常用的 JDK 自带的一些 JVM 性能调优监控工具,通过了解这些工具,可以在排查问题时给予我们非常大的帮助,将一些隐藏在底下的东西拿到明面上来做分析。

阅读更多

Linux Top 命令指南

top 命令允许用户监视 Linux 上的进程和系统资源使用情况,它是系统管理员工具箱中最有用的工具之一,并且在每个发行版中都预装了它。与 ps 等其他命令不同,它是交互式的,我们可以浏览进程列表、终止进程,等等。本文中,我们将了解如何使用 top 命令。

阅读更多

聊一聊 BeanPostProcessor 不生效

关于 BeanPostProcessor 各位一定不陌生,在 SpringBoot 源码系列-Bean 的生命周期与扩展 这篇文章中,我有介绍过 bean 的创建流程及相关扩展,就有提到 BeanPostProcessor,包括它的作用时机及如何使用,这篇文章提到的这种属于比较常规的流程,因此在绝大多数场景下,都是符合我们认知的。但是最近在排查一个问题时,发现在某些场景下,BeanPostProcessor 不生效了…

阅读更多

解决方案系列-集群选主(基于DB)

一个业务量很小的系统,所有的代码都放在一个项目中,部署在一台服务器上。所有的服务都由这台服务器提供,这就是常说的单机模式;我们知道单机模式的缺点是:1、处理能力有限,2、存在单点问题。单机模式大致如下图所示:

为了解决这些问题,出现了集群模式。

阅读更多
什么是中台?

什么是中台?

没有XX台的时代 - 烟囱式的架构

在传统IT企业,项目的架构是什么样的呢?无论项目内部的如何复杂,都可简化分为前台后台两部分,也就是垂直的烟囱式架构(业内人士把见招拆招、垂直化发展、未做足够抽象通用的架构称之为烟囱型架构)。什么是前台?所谓前台即包括各种和消费者用户直接交互的界面业务功能,比如web页面(PC端),手机app(无线端或移动端)。什么是后台?后台是面向运营人员的配置管理系统,比如商品管理、物流管理、结算管理。后台为前台提供业务管理等。前台、后台、用户之间的关系,可以用下图简单表示:

阅读更多