docker搭建nacos集群及遇到问题的处理----超详解 1、pull base镜像因为nacos启动需要依赖jdk和maven 这里我直接在docker hub上拉去了一个基于jdk1.8 maven3.3.9的centos镜像2、下载nacos-server然后https://github.com/alibaba/nacos/releases github上下载nacos-server,这里我选择的版本为1.2.1如果github上下载很慢这里推荐百度网盘进行下载3、启动三台docker容器docker run -itd -p 8850:88
Mac下容器内访问宿主机 mac下Docker容器访问宿主机端口mac下的docker其实是虚拟机,所以无法直接访问宿主机网上好多文章说用ifconfig 可以看到docker0网桥,后面就会有连接ip,但这种是不支持mac os的,今天搜到好文,故收藏一下怕以后文章不见了,以下为拷贝内容:(原文链接:https://blog.csdn.net/one_chao/article/details/98673010)Docker for Mac v 17.12 to v 18.02直接使用: docker.for.mac.ho
SpringCloud学习记录二:dubbo集成Springboot demo搭建 1、没有注册中心版:provider:项目结构:sample-api: 提供服务接口 IHelloServicesample-provider: sample-api 接口实现类、项目启动类:配置文件整个父模块provider包括两个子模块sample-api、sample-providersample-api对外提供服务,需要将sample-api maven-install打成jar包放到本地仓库供sample-provider和consumer使用consumer启动类配置
SpringCloud学习记录一:SpringBoot自动装配原理及Starter实现 springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程springboot帮我们做了什么通常搭建一个基于spring的web应用,我们需要做以下工作:1、pom文件中引入相关jar包,包括spring、springmvc、redis、mybaits、log4j、mysql-connector-java 等等相关jar …2、配置web.xml,Listener配置、Filter配置、Servlet配置、log4j配置、error配置 …3、配置数据库连接、配置
JVM学习记录七:栈帧内部结构 局部变量表:定义为一个数字数组,最基本的存储单元:槽 slot存放基本数据类型、引用类型、returnAddress 32以内占用两个slot 64位占两个slotslot重复利用问题,局部变量b变量作用域过了,销毁掉了,下一个变量c会重复利用这个slot操作数栈操作数栈用于存放栈帧中的执行中间结果:解析:实例方法以及反编译指令集如下:1、2、3、4、5、6、7、...
JVM学习记录六:运行时数据区-虚拟机栈 栈是运行时的单位,堆是存储的单位虚拟机栈内部保存一个个栈帧,对应一次次方法的调用线程私有,生命周期和线程一致,展示一种快速分配存储的方式,访问速度仅次于程序计数器,不存在垃圾回收问题主管java程序的运行,保存方法的局部变量(基本数据类型,对象的引用地址)jvm虚拟机规范允许java栈的大小是动态的或者是固定不变的固定不变的:每一个线程的虚拟机栈容量可以在线程创建的时候独立选定,如果超过了这个虚拟机栈允许的最大容量JVM就会抛出StackOverFlowError动态扩展: 在尝试扩展的时候无法
JVM学习记录五:运行时数据区-程序计数器(PC寄存器) PC寄存器:程序计数器(Program Counter Register)是一块较小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里(仅是概念模型,各种虚拟机可能会通过一些更高效的方式去实现),字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。线程私有为什么是线程私有?Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现,也就是说,在同一时刻一个处理
K8S学习记录一:容器化基础 一个很好地k8s介绍视频:https://www.bilibili.com/video/BV18t411u7kX?t=1504k8s可以简单理解为一个使用了数据库的web服务1、k8s相关组件介绍:a). kubectl : kubectl相当于客户端,是操作k8s的入口,是k8s定制化的curl命令行,相当于请求地址b). etcd : etcd是这个“web服务的键值数据库”,用于存储,用于存储容器健康状态、pod信息等c). API server :API server 相当于“web服
JVM学习记录四:类加载子系统 类加载子系统包括: 加载-》链接-》初始化1、加载:加载class字节码文件,加载器:(引导类加载器、扩展类加载器、系统类加载器)2、链接:链接阶段分为三个步骤:验证(验证字节码文件是否符合JVM规范)、准备(给类变量设置内存、赋初始值、如果类变量被final修饰则直接在准备阶段初始化)、解析(将常量池中的符号引用转换成直接引用)3、初始化:初始化阶段就是执行类构造器方法() 方法,他会将类变量赋值动作、以及静态代码块中的语句合并,按代码顺序执行如果没有静态变量和静态代码块则不存在clinit方法,
maven打war包将第三方jar包放入war包下的lib目录下 <dependency> <groupId>com.aspose</groupId> <artifactId>aspose-cad</artifactId> <version>19.9</version> <scope>system</scope> <systemPath>
JVM学习记录二:JVM解释器与JIT即时编译器 解释器 :响应快,逐行解释字节码,执行机器指令,但执行时间长,执行效率低即时编译器(JIT): 反复执行的热点代码即时编译成本地机器指令,存入方法区缓存codeCache,响应慢,执行效率高JVM类型 :SUN Classic VM : 使用解释器 可以外挂即时编译器(JIT)一旦使用JIT则由JIT接管,解释器就不能使用了Exact VM : 能够知道内存中某个位置的数据具体是什么类型,具备现代高性能虚拟机的雏形,热点探测、编译器和解释器混合工作模式HotSpot : 解释器与即时编译器混合使
通过反射创建对象,执行对象中的方法 public class Test04 { public static void main(String[] args) throws NoSuchFieldException, ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException { //通过反射创建对象 Class<?&g
框架原理:通过反射获取注解信息(实例) package Reflection;import java.lang.annotation.*;import java.lang.reflect.Field;/** * @author jiangwentao * @date 2020/5/26 */public class Test04 { public static void main(String[] args) throws NoSuchFieldException { Student student =
A表的a字段 关联 B表的b字段(主键) b字段对应c字段现在要把c字段同步更新到A表里面去 场景:有个资源发布表 release 存了年级id (grade_id)有个年级学段对应表 grade (id, school_type_id)现在要把school_type_id同步更新到release表ALTER TABLE release ADD school_type_id BIGINT ( 20 ) UNSIGNED DEFAULT NULL COMMENT ‘学段ID’ AFTER path;UPDATE release rINNER JOIN grade g ON r.grade_
网络编程下实现多线程聊天demo 1、写一个接收消息的类public class ReceiveMsg implements Runnable{ DatagramSocket socket = null; private int port; private String roleType; public ReceiveMsg(int port, String roleType) { ...