Java知识复习回顾
1、MVC
三层架构:
M:Model 数据模型层
V:View 视图层
C:Controller控制器层
目的:解耦
2、Spring
Spring:轻量级的Java开源框架,容器,目的是解决企业级开发复杂性问题
IOC:控制反转
AOP:面向切面编程,本质是动态代理。目的是在不改变业务原本的前提下增加功能,应用在日志、事务等方面。
3、SpringBoot
Spring升级版,新一代JavaEE的开发标准,开箱即用。
可以帮我们自动配置。
特性:约定大于配置
4、微服务
微服务架构是新架构,使变得模块化、功能化。
用户越来越多可以增加服务器来横向扩展。
Nginx特性:
1)负载均衡:平衡分配服务器的压力。
2)反向代理:接受请求然后将请求转发给内部网络上的服务器;并将得到的结果返回给客户端,代理服务器对外就表现为一个服务器。
3)动静分离:访问静态资源时,由nginx直接返回;动态请求由nginx将请求发送给程序,由程序进行处理。
微服务架构核心问题:
服务变多会面临的问题以及对应解决方案如下:
1)客户端如何访问 -> API网关,服务路由
2)服务之间如何通信 -> Http、RPC框架,异步调用
3)服务如何治理 -> 服务注册与发现,高可用
4)服务挂了如何解决 -> 熔断机制,服务降级
这些问题的本质:网络是不可靠的
解决方案:
1)Dubbo + zookeeper:Dubbo是通信框架,zookeeper是服务注册与发现
2)SpringCloud Alibaba:一站式解决方案
目前新解决方案:服务网格(Server Mesh),代表解决方案:istio
Java知识复习回顾的更多相关文章
- Java知识复习(四)
最近准备跳槽,又要好好复习基本知识了.过了个年,前面刚接触的springboot也只能先放放了.就先把自己复习了哪些罗列出来吧. Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用== ...
- Java知识系统回顾整理01基础02面向对象01类和对象
一.面向对象实例--设计英雄这个类 LOL有很多英雄,比如盲僧,团战可以输,提莫必须死,盖伦,琴女 所有这些英雄,都有一些共同的状态 比如,他们都有名字,hp,护甲,移动速度等等 这样我们就可以设计一 ...
- Java知识系统回顾整理01基础01第一个程序07Eclipse使用----找不到类如何解决?
一.现象 有时候会碰到如图所示的问题,分明有Hello这个类,并且也有主方法,可是运行就会出现找不到或者无法加载类Hello,或者Class Not Found 异常. 出现这个状况,有多种原因造成, ...
- Java知识系统回顾整理01基础01第一个程序06Eclipse使用技巧
一.批量修改 ALT+SHIFT+R 二.快速输入主方法 1. 敲入main 2. alt+/ 三.快速输入System.out.println 1. 敲入syso 2. alt+/ 四.快速输入fo ...
- Java知识系统回顾整理01基础01第一个程序05Eclipse中运行Java程序
一.打开Java文件 直接打开在 命令行Hello World 中创建的java 文件 HelloWorld.java 二.运行 点击绿色运行按钮,直接运行 在eclipse中,编译过程自动执行了 三 ...
- Java知识系统回顾整理01基础01第一个程序04创建Eclipse项目
一.为Eclipse设置桌面快捷方式图标 二.双击桌面快捷方式打开Eclipse 三.选择工作区 使用在命令行Hello World中的项目目录e:\project 除了第一次启动eclipse的时候 ...
- Java知识系统回顾整理01基础01第一个程序03Eclipse下载安装
Eclipse是最流行的java 集成开发环境IDE(Integrated Development Environment) 下载安装Eclipse两种方式 一.方式1:Eclipse官网下载安装 链 ...
- Java知识系统回顾整理01基础01第一个程序02命令行格式编译和执行Java程序
一.先看运行效果 在控制台下运行第一个Java程序,可以看到输出了字符串 hello world 二.准备项目目录 通常都会在e: 创建一个project目录 在这个例子里,我们用的是e:/proje ...
- Java知识系统回顾整理01基础01第一个程序01JDK 安装
一.首先第一步看JDK配置成功后的效果 点WIN键->运行(或者使用win+r) 输入cmd命令 输入java -version 注: -version是小写,不能使用大写,java后面有一个空 ...
随机推荐
- mysql主节点down机后如何恢复操作
1 停机维护 (1) 先停止上层应用 (2) 检查backup和slave的中继日志是否已经完成了回放及gtid_executed保持一致 mysql> show slave status\G; ...
- 4、git和gitlab的配置(1)
4.0.服务器说明: 服务器名称 ip地址 controller-node1 172.16.1.90 4.1.git介绍: 1.git分布式图: 2.git区域: 3.四种状态: 上面的操作在工作目录 ...
- css 设置body背景图片铺满
background-image: url(../../../assets/images/workflow/work.png); background-repeat: no-repeat; backg ...
- hdu 1754 I Hate It 线段树 单点更新 区间最值
线段树功能:update:单点更新 query:区间最值 #include <bits/stdc++.h> #define lson l, m, rt<<1 #define r ...
- java设计模式(10):代理模式(Proxy)
一,定义: 代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问. 二,其类图: 三,分类一:静态代理 1,介绍:也就是需要我们为目标对象编写一个代理对象,在编译期就生成了这个代理对 ...
- CG-CTF WxyVM2
一.原本以为要动调,因为出现了这个,函数太长,无法反编译 后面才知道这玩意可以在ida的配置文件里面去改,直接改成1024. 里面的MAXFUNSIZE改成1024,就可以反编译了,这个长度是超过这个 ...
- 【Spring】Spring中的循环依赖及解决
什么是循环依赖? 就是A对象依赖了B对象,B对象依赖了A对象. 比如: // A依赖了B class A{ public B b; } // B依赖了A class B{ public A a; } ...
- cut和grep 选取命令
cut命令 cut:将一段信息的某一段"切"出来,处理的信息是以行为单位.参数: -d :后接分隔字符,与-f一起使用: -f :依据-d的分隔字符将一段信息切割成为数段,用-f取 ...
- RWLock——一种细粒度的Mutex互斥锁
RWMutex -- 细粒度的读写锁 我们之前有讲过 Mutex 互斥锁.这是在任何时刻下只允许一个 goroutine 执行的串行化的锁.而现在这个 RWMutex 就是在 Mutex 的基础上进行 ...
- Java基础00-Java概述1
1. Java语言发展史 1.1 Java语言 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 Java语言是美国Sun公司(Stanford Univers ...