微服务:kubernetes Helm与命名空间

背景此前我们在kubernetes上部署应用都是通过自己编写yaml文件来实现的。那么能否通过类似DockerHub拉取镜像的操作,来快捷地部署常规的应用呢?答案是肯定的。kubernetes为我们提供了Helm的操作方式来快捷地部署应用,它也拥有自己的应用中心。它类似于npm、pip、Docker
微服务 kubernetes 2022年05月25日 741次浏览

微服务:kubernetes StatefulSet应用部署

背景前面我们介绍了kubernetes集群部署、service应用部署。此前的部署案例是无需存储数据的,不需要记录状态,可以随意扩充副本,每个副本都是一样且可替代的;针对数据库、Redis等需要存储数据、记录状态的应用,则不能随意扩充副本。针对这种应用场景,K8S为我们提供了StatefulSet。
微服务 kubernetes 2022年05月20日 738次浏览

微服务:kubernetes Service部署应用

背景在上一篇博文中,我们讲述了如何在Linux环境部署kubernetes集群环境。但是那种部署方式会存在一些问题,例如:每次只能访问一个pod,没有负载均衡,不会自动转发到不同的pod。访问时还需要端口转发。Pod重新创建后IP变了,名称也会改变。我们可以通过Service来解决这些问题,以便我们
微服务 kubernetes 2022年05月19日 807次浏览

微服务:kubernetes集群环境搭建

背景微服务架构kubernetes集群环境搭建。实现本文模拟基于3台服务器搭建kubernetes的集群环境搭建。服务器准备准备3台服务器(可以购买云服务器,或者使用VMware虚拟服务器),并分别命名为master、node1、node2。修改主机名# 每个节点分别设置对应主机名hostnamec
微服务 kubernetes 2022年05月17日 766次浏览

微服务:Dubbo+Zookeeper环境搭建

背景环境搭建Zookeeper安装包下载Zookeeper文件解压下载的压缩包解压(需解压两次)。配置文件将conf目录下的zoo_sample.cfg文件复制一份,重命名为zoo.cfg文件(Linux与Windows同样的操作)。注:此步骤不可缺少,否则在Zookeeper服务无法启动(闪退)。
微服务 2022年05月13日 1,343次浏览

线程同步解决线程安全问题

背景多个线程操作同一资源时,会产生线程安全问题。实现synchronized与lock锁均可解决线程安全问题。问题复现代码package com.langjialing;public class ThreadSynchronized { public static void main(Stri
多线程 2022年05月10日 824次浏览

多线程的守护线程

背景多线程的守护线程。实现Thread的setDaemon方法可设置守护线程。注:默认线程均为用户线程,守护线程需要把setDaemon设置为true;虚拟机必须确保用户线程完成执行,而不用等待守护线程完成执行。守护线程应用场景:后台记录操作、监控内存、垃圾回收等待。代码package com.la
Java 多线程 2022年05月10日 802次浏览

多线程的线程优先级

背景多线程的线程优先级。实现Thread的setPriority方法可设置线程的优先级。代码注:setPriority()方法要先于start()方法执行,需要先设置线程的优先级才会生效;优先级高仅表示线程获得CPU调度的权重大,并不代表着一定会先于优先级低的线程执行。package com.lan
Java 多线程 2022年05月10日 847次浏览

多线程的线程强制插队执行-join

背景多线程的线程插队执行-join。实现join方法会强制让线程执行,并在线程执行结束后再开始执行其它线程。代码package com.langjialing;import java.awt.*;public class ThreadJoin implements Runnable{ @Ove
Java 多线程 2022年05月10日 747次浏览

多线程的线程礼让

背景多线程的线程礼让。实现注:礼让线程,让当前正在执行的线程暂停,但不阻塞;将线程从运行状态转为就绪状态;礼让的本质是让CPU重新调度,因此礼让的结果仍然是随机的。并不是把CPU的时间交付给另外的线程。代码package com.aac;//线程礼让//线程礼让不一定成功public class T
Java 多线程 2022年05月10日 787次浏览