Java EE

Nginx(四)------nginx 负载均衡

≡放荡痞女 提交于 2020-05-09 16:55:48
  在上一篇博客我们介绍了 Nginx 一个很重要的功能——代理,包括正向代理和反向代理。这两个代理的核心区别是:正向代理代理的是客户端,而反向代理代理的是服务器。其中我们又重点介绍了反向代理,以及如何通过 Nginx 来实现反向代理。那么了解了Nginx的反向代理之后,我们要通过Nginx的反向代理实现另一个重要功能——负载均衡。 1、负载均衡的由来   早期的系统架构,基本上都是如下形式的:      客户端发送多个请求到服务器,服务器处理请求,有一些可能要与数据库进行交互,服务器处理完毕后,再将结果返回给客户端。   这种架构模式对于早期的系统相对单一,并发请求相对较少的情况下是比较适合的,成本也低。但是随着信息数量的不断增长,访问量和数据量的飞速增长,以及系统业务的复杂度增加,这种架构会造成服务器相应客户端的请求日益缓慢,并发量特别大的时候,还容易造成服务器直接崩溃。很明显这是由于服务器性能的瓶颈造成的问题,那么如何解决这种情况呢?   我们首先想到的可能是升级服务器的配置,比如提高CPU执行频率,加大内存等提高机器的物理性能来解决此问题,但是我们知道 摩尔定律 的日益失效,硬件的性能提升已经不能满足日益提升的需求了。最明显的一个例子,天猫双十一当天,某个热销商品的瞬时访问量是极其庞大的,那么类似上面的系统架构,将机器都增加到现有的顶级物理配置,都是不能够满足需求的

Java面试之项目面试问题——不看面试会后悔的

我的梦境 提交于 2020-05-09 15:45:16
1.请描述下你做的项目: XXX系统是什么什么,主要目的是XXX,整个系统包含了哪些功能模块,然后说包含了哪些模块,自己做了哪些模块。 2.结合项目谈谈你对MVC的理解 MVC是model-view-controler的简称。也就是模型-视图-控制器。mvc是一种设计模式,他强制性的把应用程序的输入、处理和输出分开。mvc中的模型、视图、控制器分别担任着不同的任务。 视图:视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并接受用户的输入。视图不进行任何业务逻辑处理。 模型:模型表示业务数据和业务处理。相当于javaBean。一个模型能为多个视图提供数据。这提高了应用程序的重用性。 控制器:当用户单击web页面中的提交按钮时,控制器接收请求并调用相应的模型去处理请求。然后根据处理的结果调用相应的视图来显示处理的结构。 MVC的处理过程:首先控制器接收用户的请求,调用相应的模型来进行业务处理,并返回数据给控制器。控制器调用相应的视图来显示处理的结构。并通过视图呈现给用户。如在项目中要对应MVC的话;View对应项目中的jsp,controler对应action,model对应service+dao层的业务逻辑和持久层的操作。 3.项目中为什么要使用ssh(三大框架的优点) 1.使用struts是因为struts是基于mvc模式的,很好的将应用程序进行了分层

学术分享丨深度学习在术前手术规划中的应用

我只是一个虾纸丫 提交于 2020-05-09 15:34:00
  随着学会的队伍不断发展壮大,分支机构的发展愈发完善,丰富多彩的分支活动与学术分享也频频呈现。疫情期间,CAAI认知系统与信息处理专委会积极倡导学会“疫情防控不放松,学习充电不间断”的理念,邀请年轻学者结合本专委会自身领域研究精选相关文献进行研究与再解读,与大家分享《深度学习在术前手术规划中的应用》。   外科手术的进步对急性和慢性疾病的管理,延长寿命和不断扩大生存范围都产生了重大影响。如图1所示,这些进步得益于诊断,成像和外科器械的持续技术发展。这些技术中,深度学习对推动术前手术规划尤其重要。手术规划中要根据现有的医疗记录来计划手术程序,而成像对于手术的成功至关重要。在现有的成像方式中,X射线,CT,超声和MRI是实际中最常用的方式。基于医学成像的常规任务包括解剖学分类,检测,分割和配准。      图1:概述了流行的AI技术,以及在术前规划,   术中指导和外科手术机器人学中使用的AI的关键要求,挑战和子区域。 1、分类   分类输出输入的诊断值,该输入是单个或一组医学图像或器官或病变体图像。除了传统的机器学习和图像分析技术,基于深度学习的方法正在兴起[1]。对于后者,用于分类的网络架构由用于从输入层提取信息的卷积层和用于回归诊断值的完全连接层组成。   例如,有人提出了使用GoogleInception和ResNet架构的分类管道来细分肺癌,膀胱癌和乳腺癌的类型[2]

JSP+Servlet+JDBC+C3P0实现的人力资源管理系统

旧巷老猫 提交于 2020-05-09 14:50:19
项目简介 项目来源于: https://github.com/ruou/hr 本系统基于 JSP+Servlet+C3P0+Mysql 。涉及技术少,易于理解,适合 JavaWeb初学者 学习使用。 难度等级:简单 技术栈 编辑器 Eclipse Version: 2019-12 (4.14.0) 前端技术 基础:html+css+JavaScript 框架:无 后端技术 Jsp+Servlet 数据库连接池:C3P0 JDBC工具: Apache Commons DbUtils 数据库:mysql 5.7.27(个人测试使用) jdk版本:1.8.0_181(个人测试使用) tomcat版本:8.5.34(个人测试使用) 本地运行 Eclipse环境准备 1. eclipse新增jdk 2. eclipse新增tomcat 导入项目 若有疑惑可查看 视频版本 。 1.下载zip直接解压或安装git后执行克隆命令 git clone https://github.com/ruou/hr.git 若下载过慢可将github仓库复制到gitee上。 查看视频 2.使用eclipse导入项目,配置jdk、tomcat和所需jar包。 项目所依赖jar包在 WebContent/WEB-INF/lib 文件夹下。 3.打开Navicat For Mysql,创建db_hr数据库,并运行

Spring Boot 访问静态资源

霸气de小男生 提交于 2020-05-09 13:32:26
在SpringBoot 项目中没有我们之前常规web 开发的WebContent(WebApp),它只有 src 目录。在src/main/resources 下面有两个文件夹,static 和templates。SpringBoot 默认在static 目录中存放静态页面,而templates 中放动态页面。 1 static 目录 Spring Boot 通过classpath/static 目录访问静态资源。注意存放静态资源的目录名称必须 是static。 2 templates 目录 在Spring Boot 中不推荐使用jsp 作为视图层技术,而是默认使用Thymeleaf 来做动态页 面。Templates 目录这是存放Thymeleaf 的页面。 来源: oschina 链接: https://my.oschina.net/u/4292686/blog/4271712

补习系列(7)-springboot 实现拦截的五种姿势

只谈情不闲聊 提交于 2020-05-09 12:21:19
[TOC] 简介 AOP(面向切面编程)常用于解决系统中的一些耦合问题,是一种编程的模式 通过将一些通用逻辑抽取为公共模块,由容器来进行调用,以达到模块间隔离的效果。 其还有一个别名,叫面向关注点编程,把系统中的核心业务逻辑称为 核心关注点 ,而一些通用的非核心逻辑划分为 横切关注点 AOP常用于... 日志记录 你需要为你的Web应用程序实现访问日志记录,却又不想在所有接口中一个个进行打点。 安全控制 为URL 实现访问权限控制,自动拦截一些非法访问。 事务 某些业务流程需要在一个事务中串行 异常处理 系统发生处理异常,根据不同的异常返回定制的消息体。 在笔者刚开始接触编程之时,AOP还是个新事物,当时曾认为AOP会大行其道。 果不其然,目前流行的Spring 框架中,AOP已经成为其关键的核心能力。 接下来,我们要看看在SpringBoot 框架中,怎么实现常用的一些拦截操作。 先看看下面的一个Controller方法: 示例 @RestController @RequestMapping("/intercept") public class InterceptController { @PostMapping(value = "/body", consumes = { MediaType.TEXT_PLAIN_VALUE, MediaType.APPLICATION_JSON

简单介绍几种Java后台开发常用框架组合

好久不见. 提交于 2020-05-09 12:13:32
01 前言 Java框架一直以来都是面试必备的知识点,而掌握Java框架,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能对当前正在开发中的系统有整体的认知,从而更好的熟悉和学习技术,这篇文章胖达就打算给大家介绍几款现阶段流行的框架组合,不管是在传统企业开发还是在互联网开发领域,这几种框架应该都是比较常用的。 02 三层架构 说到框架首先需要明确的是,在Web开发领域一般会将架构分为三个部分:表示层、持久层、业务层,之所以将整体架构分为三个层面,主要目的是让整个系统更具有条理性,通过分配任务的方式进行系统的解耦,让每一层只关心自己内部的事情,只知道下层的存在,不知道上层的存在。达到局部改变而不影响全局的目的,就比如餐馆中有服务员、厨师、收银员一样,各司其职,让系统有条不紊的运行下去。三层架构如下图所示(图中的数据访问层就是文中的持久层): 下面就简单介绍一下三层架构: 1.表示层 表示层其实就是用户能够看到的界面显示层,但是它的职责并不仅仅是显示界面那么简单,而是需要完成三件事情: 从界面中取得数据跟后台服务器交互 跟后台交互后进行数据绑定 将绑定的数据呈现在页面中 一般来说,这一层的设计会采用MVC的模式,M称为模型也就是实体类,用于数据的封装和数据的传输;V为视图也就是页面组件,用于数据的展示;C为控制也就是流程事件,用于流程的控制。 2.业务层

01 mybatis框架整体概况(2018.7.10)-

别等时光非礼了梦想. 提交于 2020-05-09 10:51:58
01 mybatis框架整体概况(2018.7.10)- F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10) maven用的是3.39的版本 F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\02_工具\maven工具包 mysql用的是5.5的版本 mysql的客户端用的是Mysql_Front ecplise和Maven全都是绿色版本 基于的jdk的版本是1.8的版本 github的地址: https://github.com/mybatis/mybatis-3 MyBatis官方文档 http://www.mybatis.org/mybatis-3/ 下面可以选择中文 基于jdbc的封装 jdbc链接数据库的回顾 首先是加载驱动类 Class.formName(); 本地的数据库:我们要使用MyBatis插入到这个开课吧数据库内的dept部门表内的数据,一共就有三个字段。 github首页中下载最新的版本的Mybatis 看官方文档的介绍,要使用就要先引入jar包文件 使用Maven去管理,我们来按照他的要求去做一下 Maven就是jar包的管理工具,在我们的工具里面有Maven工具包。我们这里的maven是一个免安装的版本

Spring 框架介绍 [Spring 优点][Spring 应用领域][体系结构][目录结构][基础 jar 包]

ぃ、小莉子 提交于 2020-05-09 10:42:22
您的“关注”和“点赞”,是信任,是认可,是支持,是动力...... 如意见相佐,可留言。 本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新。 目录 1 Spring 框架概述 2 Spring 的优点 3 Spring 的应用领域 4 Spring 体系结构 4.1 Spring 体系结构概述 4.2 各个模块介绍 (1)Data Access/Integration(数据访问/集成)层 (2)Web 层 (3)Core Container(核心容器)层 (4)其他模块 5 Spring 目录结构 5.1 Spring 框架下载 5.2 Spring 框架目录结构介绍 6 Spring 框架的四个基础 JAR 包 7 使用 Spring 框架时,必须导入的 JAR 包 8 文章其他地址 8.1 微信公众号:码农阿杰 8.2 CSDN 博客 9 参考资料地址 9.1 spring 9.2 Artifact Repository Browser 9.3 Apache Commons 1 Spring 框架概述 可以看一下官网给出的介绍,如下图所示: Spring 是一个主流的 Java Web 开发框架,该框架是一个轻量级的应用框架,具有很高的凝聚力和吸引力。Spring使每个人都可以更快,更轻松,更安全地进行Java编程。Spring对速度

java.lang.IllegalStateException: getOutputStream() has already been called for this response解决方案

|▌冷眼眸甩不掉的悲伤 提交于 2020-05-09 10:16:13
前言:jsp抛出异常,虽不影响正常运行,但是感觉不舒服。 解决方案: 1、Jsp解决办法 ,在程序的最后添加: out.clear(); out = pageContext.pushBody(); 2、Struts2解决办法 直接让action中的处理方法返回null。 2、SpringMvc解决办法 让controller层的该方法返回null。 参考链接: https://www.cnblogs.com/linjiqin/archive/2013/06/21/3148091.html 最后:感谢该作者帮助我解决了问题。谢谢! 来源: oschina 链接: https://my.oschina.net/u/4412419/blog/4271531