后端

二叉树理论介绍

二叉树的种类 满二叉树 完全二叉树 满二叉树 满二叉树:如果一棵二叉树只有度为0的结点和度为2的结点,并且度为0的结点在同一层上,则这棵二叉树为满二叉树。 image.png 这棵二叉树为满二叉树,也可以说深度为k,有2^k-1个节点的二叉树。 完全二叉树 什么是完全二叉树? 完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下

Spring Boot 内嵌容器 Tomcat / Undertow / Jetty 优雅停机实现

Spring Boot 在关闭时,如果有请求没有响应完,在不同的容器会出现不同的结果,例如,在 Tomcat 和 Undertow 中会出现中断异常,那么就有可能对业务造成影响。所以,优雅停机非常有必要性,目前官方是没有提供很好的策略来实现。 Each SpringApplication registers a shutdown hook with the JVM to ensure that

快速上手云原生安全平台 NeuVector

作者简介 万绍远,CNCF 基金会官方认证 Kubernetes CKA&CKS 工程师,云原生解决方案架构师。对 ceph、Openstack、Kubernetes、prometheus 技术和其他云原生相关技术有较深入的研究。参与设计并实施过多个金融、保险、制造业等多个行业 IaaS 和 PaaS 平台设计和应用云原生改造指导。 前 言 NeuVector 是业界首个端到端的开源容

Flutter - 显示/隐藏控件的几种方法

1. if 判断 if(!_hidden) Container( color: Colors.deepOrangeAccent, child: TestWidget(msg: 'if 判断',), ) 实际效果,不会占位,隐藏时TestWidget不会加载,可else一个占位(则会加载占位的组件) 2. Opacity Container(

计算机网络Day_01

导视 计算机网络的初印象: 计算机网络的概念: 计算机网络是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。 *计算机网络是一个互联(互联互通)的、自治(无主从关系)的计算机集合。 计算机网络的功能: 数据通信(连通性) 资源共享(硬件、软件、数据等) 分布式处理(多台计算机各自承担同一工作任务的不同部分) 提高可

LeetCode - #123 买卖股票的最佳时机 III

前言 我们社区陆续会将顾毅(Netflix 增长黑客,《iOS 面试之道》作者,ACE 职业健身教练。)的 Swift 算法题题解整理为文字版以方便大家学习与阅读。 LeetCode 算法到目前我们已经更新到 122 期,我们会保持更新时间和进度(周一、周三、周五早上 9:00 发布),每期的内容不多,我们希望大家可以在上班路上阅读,长久积累会有很大提升。 不积跬步,无以至千里;不积小流,无以成江

数据结构和算法入门

定义 数据结构就是指一组数据的存储结构,算法就是操作这组数据的一组方法。 学习方法 数据结构和算法不用死记,我们要学习它的“来历”“自身的特点”“适合解决的问题”以及“实际的应用场景”,尽量手写实现。 image.png 复杂度分析 数据结构和算法本身解决的是“快”和“省”的问题,即如何让代码运行得更快,如何让代码更省存储空间。所以时间和空间就是衡量一个算法执行效率的总要指标。 时间

SpringCloud微服务实战——搭建企业级开发框架(四十三):多租户可配置的电子邮件发送系统设计与实现

  在日常生活中,邮件已经被聊天软件、短信等更便捷的信息传送方式代替。但在日常工作中,我们的重要的信息通知等非常有必要去归档追溯,那么邮件就是不可或缺的信息传送渠道。对于我们工作中经常用到的系统,里面也基本都集成了邮件发送功能。   SpringBoot提供了基于JavaMail的starter,我们只要按照官方的说明配置邮件服务器信息,即可使我们的系统拥有发送电子邮件的功能。但是,在我们GitE

k8s集群环境搭建-VMware16pro安装集群(二)

1.前置知识点 目前生产部署Kubernetes 集群主要有两种方式: kubeadm Kubeadm 是一个K8s 部署工具,提供kubeadm init 和kubeadm join,用于快速部署Kubernetes 集群。 官方地址: 二进制包 从github 下

知道synchronized原理吗?

synchronized是java提供的原⼦性内置锁,这种内置的并且使⽤者看不到的锁也被称为监视器锁,使⽤synchronized之后,会在编译之后在同步的代码块前后加上monitorenter和monitorexit字节码指令,它依赖操作系统底层互斥锁实现。它的作⽤主要就是实现原⼦性操作和解决共享变量的内存可⻅性问题。 执⾏monitorenter指令时会尝试获取对象锁,如果对象没有被锁定或者已