可扩展性

Spring基础配置篇(一)

徘徊边缘 提交于 2020-02-03 00:52:17
一、说在前面 怎样的架构的程序,我们认为是一个优秀的架构? 我们考虑的标准:可维护性好,可扩展性好,性能。 什么叫可扩展性好? 答:就是可以做到,不断的增加代码,但是可以不修改原来的代码的程序。 如何让程序的可维护性好,可扩展性好呢? 业界有一个公认的标准,高内聚,低耦合。 高内聚:就是尽量将代码写在与之功能描述一致的模块中。如User表的操作写在UserDAO里面就不用写在非UserDAO的类里面。 低耦合:就是尽量减少类与类之间的直接关系。(重点) Spring框架就是通过IoC(控制反转)实现程序的解耦。从而提高程序的维护性和扩展性。 二、Spring概述 2.1. Spring是什么 Spring是一个JavaEE轻量级的一站式开发框架。 JavaEE: 就是用于开发B/S的程序。(企业级) 轻量级:使用最少代码启动框架,然后根据你的需求选择,选择你喜欢的模块使用。 重量级:早期有的EJB,开发一个HelloWorld程序都需要引入EBJ的全部模块 一站式:提供了,表示层(Struts2/SpringMVC),服务层,持久层的所有支持。 2.2. Spring框架出现的背景 在世界第一套有Java官方Sun公司推出的企业级开发框架EJB出现后,瞬间风靡全球。被各大公司所应用。 Spring之父,Rod Jonhson是一个音乐博士,在Sun公司的大力推广下

介绍一下什么是“服务器”

浪子不回头ぞ 提交于 2019-12-06 10:58:18
介绍一下什么是“服务器” 服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。根据服务器所提供的服务,一般来说服务器都具备承担响应服务请求、承担服务、保障服务的能力。服务器作为电子设备,其内部的结构十分的复杂,但与普通的计算机内部结构相差不大,如:cpu、硬盘、内存,系统、系统总线等。 什么是服务器 服务器是一种高性能计算机,作为网络的节点,存储、处理网络上80%的数据、信息,因此也被称为网络的灵魂。 也可以这样讲,服务器指一个管理资源并为用户提供服务的计算机软件,通常分为文件服务器、数据库服务器和应用程序服务器。运行以上软件的计算机或计算机系统也被称为服务器。 相对于普通PC来说,服务器在稳定性、安全性、性能等方面都要求更高,因此CPU、芯片组、内存、磁盘系统、网络等硬件和普通计算机有所不同,在质量与处理器数据性能上更出色。 服务器和电脑功能都是一样的,我们也可以讲 服务器称之为电脑 ,只是服务器对稳定性与安全性以及处理器数据能力有更高要求。 服务器作用比较广,网络游戏、网站、部分软件都是需要存到服务器的,还有一些企业会配服务器

设计模式之美学习(一):设计模式对编程工作者是很重要的,它的作用不言而喻。

删除回忆录丶 提交于 2019-12-06 03:26:01
继数据结构与算法之美后,王争老师的专栏又开始更新了,这次是《设计模式之美》,希望学习之后会对自己有所提升。在此记录下自己的学习笔记,希望对自己或者看到的读者都有所裨益。 为什么每个程序员都要尽早地学习并掌握设计模式相关知识? 1. 应对面试中的设计模式相关问题 学习设计模式和算法一样,最功利、最直接的目的,可能就是应对面试了。 不管你是前端工程师、后端工程师,还是全栈工程师,在求职面试中,设计模式问题是被问得频率比较高的一类问题。特别是一些像 BAT 、 TMD 这样的大公司,比较重视候选人的基本功,经常会拿算法、设计模式之类的问题来考察候选人。 2. 告别写被人吐槽的烂代码 我们经常说, Talk is cheap,show me the code 。实际上,代码能力是一个程序员最基础的能力,是基本功,是展示一个程序员基础素养的最直接的衡量标准。你写的代码,实际上就是你名片。 3. 提高复杂代码的设计和开发能力 大部分工程师比较熟悉的都是编程语言、工具、框架这些东西,因为每天的工作就是在框架里根据业务需求,填充代码。实际上,这样的工作并不需要你具备很强的代码设计能力,只要单纯地能理解业务,翻译成代码就可以了。 但是,有一天, leader 让开发一个跟业务无关的比较通用的功能模块,面对这样稍微复杂的代码设计和开发,就发现会有点力不从心,不知从何下手了。因为只是完成功能、代码能用

一步一步理解 Java 企业级应用的可扩展性

风流意气都作罢 提交于 2019-12-05 14:52:35
摘要:本文主要介绍如何理解 Java 应用的扩展方式以及不同类型的扩展技术和具体技巧,介绍一些有关 Java 企业级应用的一般扩展策略。 老实说,“可扩展性”是个全面且详尽的话题,而且往往得不到充分理解。人们通常认为可扩展性等同于高可用性,笔者见过编程新手和架构师“老手”都建议将集群作为可扩展性和高可用性的解决方案。建议确实没错,但问题是,人们通常是通过互联网搜索,而非实际理解应用本身的情况来实现集群。 笔者并未自称“专家”,只想通过这篇文章介绍一些有关 Java 企业级应用的一般扩展策略。 ##问题 可扩展性并非 Java 企业级平台规范内的标准组件。相关技术通常因供应商(应用服务器)而异,并且往往需要使用不止一款产品(应用服务器本身除外)。正因如此,设计可扩展的 Java 企业级应用才会有些棘手,要完成任务,往往不仅没有可以参照的实例,而且要求我们必须彻彻底底地理解应用。 ##扩展类型 笔者确信你们不是第一次看到这些内容。扩展一般分为两大类:纵向扩展,和横向扩展。 扩展的第一个自然阶段是纵向扩展。 纵向扩展:包括给服务器增加更多资源,例如内存 (RAM)、磁盘空间、处理器等。这在某些方案中具备实用价值,但经过特定时间点后就会发现,这种扩展费用高昂,不如借助横向扩展。 横向扩展:在这个过程中会增加更多机器或额外的服务器实例/节点,这也叫做集群(Clustering)

设计模式之美学习(一):设计模式对编程工作者是很重要的,它的作用不言而喻。

强颜欢笑 提交于 2019-12-01 02:40:19
继数据结构与算法之美后,王争老师的专栏又开始更新了,这次是《设计模式之美》,希望学习之后会对自己有所提升。在此记录下自己的学习笔记,希望对自己或者看到的读者都有所裨益。 为什么每个程序员都要尽早地学习并掌握设计模式相关知识? 1. 应对面试中的设计模式相关问题 学习设计模式和算法一样,最功利、最直接的目的,可能就是应对面试了。 不管你是前端工程师、后端工程师,还是全栈工程师,在求职面试中,设计模式问题是被问得频率比较高的一类问题。特别是一些像 BAT 、 TMD 这样的大公司,比较重视候选人的基本功,经常会拿算法、设计模式之类的问题来考察候选人。 2. 告别写被人吐槽的烂代码 我们经常说, Talk is cheap,show me the code 。实际上,代码能力是一个程序员最基础的能力,是基本功,是展示一个程序员基础素养的最直接的衡量标准。你写的代码,实际上就是你名片。 3. 提高复杂代码的设计和开发能力 大部分工程师比较熟悉的都是编程语言、工具、框架这些东西,因为每天的工作就是在框架里根据业务需求,填充代码。实际上,这样的工作并不需要你具备很强的代码设计能力,只要单纯地能理解业务,翻译成代码就可以了。 但是,有一天, leader 让开发一个跟业务无关的比较通用的功能模块,面对这样稍微复杂的代码设计和开发,就发现会有点力不从心,不知从何下手了。因为只是完成功能、代码能用

设计模式之美学习(一):设计模式对编程工作者是很重要的,它的作用不言而喻。

十年热恋 提交于 2019-12-01 02:34:39
继数据结构与算法之美后,王争老师的专栏又开始更新了,这次是《设计模式之美》,希望学习之后会对自己有所提升。在此记录下自己的学习笔记,希望对自己或者看到的读者都有所裨益。 为什么每个程序员都要尽早地学习并掌握设计模式相关知识? 1. 应对面试中的设计模式相关问题 学习设计模式和算法一样,最功利、最直接的目的,可能就是应对面试了。 不管你是前端工程师、后端工程师,还是全栈工程师,在求职面试中,设计模式问题是被问得频率比较高的一类问题。特别是一些像 BAT 、 TMD 这样的大公司,比较重视候选人的基本功,经常会拿算法、设计模式之类的问题来考察候选人。 2. 告别写被人吐槽的烂代码 我们经常说, Talk is cheap,show me the code 。实际上,代码能力是一个程序员最基础的能力,是基本功,是展示一个程序员基础素养的最直接的衡量标准。你写的代码,实际上就是你名片。 3. 提高复杂代码的设计和开发能力 大部分工程师比较熟悉的都是编程语言、工具、框架这些东西,因为每天的工作就是在框架里根据业务需求,填充代码。实际上,这样的工作并不需要你具备很强的代码设计能力,只要单纯地能理解业务,翻译成代码就可以了。 但是,有一天, leader 让开发一个跟业务无关的比较通用的功能模块,面对这样稍微复杂的代码设计和开发,就发现会有点力不从心,不知从何下手了。因为只是完成功能、代码能用

一.Python特点

≡放荡痞女 提交于 2019-11-30 23:46:07
python第一节 简介 Python介绍 什么样的语言? 解释性语言:开发中没有编译的环节 交互式语言:在命令提示行执行python引擎,直接执行代码 面向对象语言:支持面向对象 优点 a.易学 b.免费开源 c.高层语言 d.可移植性 e.解释性 f.面向对象 g.可扩展性 缺点 a.运行速度慢: 如果有速度要求, 可通过其可扩展性, 通过C++进行关键部分的改写 来源: https://www.cnblogs.com/Sinkinghost/p/11645011.html

前言、Mysql简介

家住魔仙堡 提交于 2019-11-26 23:42:23
一、Mysql5.7的新增功能 1、支持JSON,是一种可以替代XML的存储信息格式,从5.7.8版本开始支持 2、改进InnoDB的可扩展性和临时表的性能,从而实现更快的网络和大数据加载等操作 3、改进赋值包括多源复制、多从线程增强、在线GTIDs和增强的半同步复制 4、增加了许多新的监控功能,以减少空间和过载,使用新的SYS模式显著提高易用性 5、以安全第一为宗旨,提供了很多新的功能,从而保证数据库的安全 6、重写了大部分解释器、优化器和成本模型,提高了可维护性、可扩展性和性能 6、全新功能,包括InnoDB空间索引,使用Boost.Geometry,同时提高完整性和标准符合性 二、Excel访问Mysql 1、安装 来源: https://www.cnblogs.com/cloud-sj/p/11335508.html