
架构
JQW_YNU
无
展开
-
设计扛住千万级流量架构
架构设计原则面试回答的角度很重要,也是面试回答好与坏的关键:高并发 (拆分、服务化、消息队列(异步处理)、缓存)高可用 (集群、限流、降级)业务设计 (幂等、防重、状态机)高并发系统的三把利器缓存、降级、限流...原创 2018-07-11 11:58:36 · 1173 阅读 · 0 评论 -
大型网站应用之海量数据和高并发解决方案总结一二
一、网站应用背景开发一个网站的应用程序,当用户规模比较小的时候,使用简单的:一台应用服务器+一台数据库服务器+一台文件服务器,这样的话完全可以解决一部分问题,也可以通过堆硬件的方式来提高网站应用的访问性能,当然,也要考虑成本的问题。当问题的规模在经济条件下通过堆硬件的方式解决不了的时候,我们应该通过其他的思路去解决问题,互联网发展至今,已经提供了很多成熟的解决方案,但并不是都具有适用性,你把...转载 2018-11-01 21:49:14 · 224 阅读 · 0 评论 -
Mysql分库分表方案
1.为什么要分表:当一张表的数据达到几千万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了。分表的目的就在于此,减小数据库的负担,缩短查询时间。mysql中有一种机制是表锁定和行锁定,是为了保证数据的完整性。表锁定表示你们都不能对这张表进行操作,必须等我对表操作完才行。行锁定也一样,别的sql必须等我对这条数据操作完了,才能对这条数据进行操作。2. mysql...原创 2018-11-01 21:56:25 · 282 阅读 · 0 评论 -
MySQL的分区、分表、集群
1.分区mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可以通过my.cnf中的datadir来查看),一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放表数据的,一个是myi存表索引的。如果一张表的数据量太大的话,那么myd,myi就会变的很大,查找数据就会变的很慢,这个时候我们可以利用mysql的分区功能,在物理上将这一张表对...转载 2018-11-01 22:00:19 · 131 阅读 · 0 评论 -
非关系型数据库和关系型数据库区别
1.实质。非关系型数据库的实质:非关系型数据库产品是传统关系型数据库的功能阉割版本,通过减少用不到或很少用的功能,来大幅度提高产品性能。2.价格。目前基本上大部分主流的非关系型数据库都是免费的。而比较有名气的关系型数据库,比如Oracle、DB2、MSSQL是收费的。虽然Mysql免费,但它需要做很多工作才能正式用于生产。3.功能。实际开发中,有很多业务需求,其实并不需要完整的...转载 2018-11-01 22:09:34 · 1077 阅读 · 0 评论 -
mybatis与hibernate的对比
本文并非原创,旨在整理汇总,不定期进行增加和修改。相同点:(1)Hibernate与MyBatis都是通过SessionFactoryBuider由XML配置文件生成SessionFactory,由SessionFactory 生成Session,由Session来开启执行事务和SQL(Structured Query Language,结构化查询语言)语句。(2)Hibernate和...原创 2018-11-01 22:29:19 · 929 阅读 · 0 评论 -
负载均衡的基础技术种类
负载均衡实现应用服务器伸缩性1、 HTTP重定向负载均衡 利用HTTP重定向协议实现负载均衡。如下图所示: HTTP重定向负载均衡原理 HTTP重定向服务器是一台普通的应用服务...原创 2018-11-02 12:35:54 · 226 阅读 · 0 评论 -
几种企业应用集成方式的比较
前言 我们做过的大部分系统其实并不是自己从头开始设计和实现的,很多时候是基于现有的基础再做扩展或者和现有的系统集成。尤其是很多企业应用的系统,因为我们定义的很多子系统是为了解决某个特定的问题或者问题域,在后续随着业务的发展和变化对于系统也会有更多的集成要求。于是,集成主要有哪几种方式?他们各有什么特点呢?这些问题就一一的浮现出来。这里主要针对一些原来个人项目中接触过的问题,结合一些前人...转载 2018-11-04 14:38:40 · 1517 阅读 · 0 评论 -
解析微服务架构(一):融入微服务的企业集成架构
本文将介绍融入微服务的企业集成架构的演进,并描述交互式系统的微服务模式及相关技术决策,然后给出了一个具体的微服务架构业务应用的例子。 交互型系统(System of Engagement)与记录型系统(System of Record)随着移动互联网的快速发展,企业除了需要提供传统核心IT系统能力之外,还需提供客户与合作伙伴友好型的以交互为重点的创新及交互式系统。这两类系统的特性与禀赋...转载 2018-11-04 15:30:58 · 1421 阅读 · 0 评论 -
解析微服务架构(二):微服务重构应用及IBM解决方案
解析微服务架构系列文章将分几篇描述微服务的定义、特点、应用场景、企业集成架构的演进以及微服务转型思路和技术决策考虑等内容,并以IBM技术为例介绍如何实现微服务架构转型。上一篇文章介绍了融入微服务的企业集成架构的演进,并介绍交互式系统的微服务模式及技术决策例子。本篇文章将介绍已有IT应用如何进行微服务重构的转型,以及IBM微服务相关解决方案的介绍。 微服务转型采用微服务架构意味着...转载 2018-11-04 15:32:11 · 326 阅读 · 0 评论 -
微服务架构综述
目录如下:一、微服务架构介绍二、出现和发展三、传统开发模式和微服务的区别四、微服务的具体特征五、SOA和微服务的区别六、如何具体实践微服务七、常见的微服务设计模式和应用八、微服务的优点和缺点九、思考:意识的转变十、参考资料和推荐阅读 一、微服务架构介绍 微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功...原创 2018-11-02 15:55:34 · 1012 阅读 · 0 评论 -
微服务架构设计
微服务 软件架构是一个包含各种组织的系统组织,这些组件包括 Web服务器, 应用服务器, 数据库,存储, 通讯层), 它们彼此或和环境存在关系。系统架构的目标是解决利益相关者的关注点。Conway’s law: Organizations which design systems[...] are constrained to produce designs which a...转载 2018-11-02 20:35:13 · 229 阅读 · 0 评论 -
软件构架评估的敏感点和权衡点
敏感点是一个或多个构件(或之间的关系)的特性,比如以前的Qtcache对于Quotes多的状态下,经常跟不上,说明Qtcache对于Quotes的数量比较敏感,在采用了lbserver之后跟不上有所缓解。权衡点是影响多个质量属性的特性,是多个质量属性的敏感点。其实绝大多数考虑都是基于权衡点来考虑的,在某个权衡点上考虑时,某些构件对于某一点比较敏感。可见敏感点是从构件角度来考虑,权衡点是从构件交...原创 2018-11-01 20:43:45 · 6212 阅读 · 0 评论 -
mvc与三层结构终极区别
注:本文章内所有内容都来自互联网,本人主要是起了一个收集的作用http://www.cnblogs.com/zhhh/archive/2011/06/10/2077519.html又看到有人在问三层架构和MVC的关系,感觉这种问题有点教条化了。因为它们都在逻辑上将应用程序划为三块,凑了一个数字3,就有人非要把它们联系到一起了。 这两个东西我接触有几年了,有一点体会,表达一下: ...原创 2018-11-01 19:59:57 · 955 阅读 · 3 评论 -
java架构师技术图谱(详细)
转载 2018-07-11 15:18:32 · 4773 阅读 · 2 评论 -
架构师了解一下
什么样的公司才需要架构师不是所有的公司都需要架构师简言之,专为解决系统复杂问题而设置的岗位(架构师岗位)小公司要不要架构师?创业公司需不需要架构师?简单业务链需不需要架构师?上述的三个结果都是无法发挥架构师的价值成为架构师必须具备的条件高级工程师1.技高一筹(对常用的技术运用非常熟练)2.具备自己造轮子的能力(归档,工具类)3.API文档的阅读能力(尤其是英文文档realy)4.自学能力(思考能力...原创 2018-07-11 15:56:08 · 243 阅读 · 0 评论 -
23种设计模式
一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两...原创 2018-08-12 15:52:55 · 350 阅读 · 0 评论 -
前端js架构设计
前端架构原则:1.职责分离,高内聚,低耦合2.分层,结构清晰合理3.算法性能较优4.复用性,维护性优今天说下js是如何合理架构的1.如何满足职责分离,高内聚,低耦合: 举例:创建不同的js,每个js满足自己角色职责的事情 ,比如页面跳转js , 数据处理js(增删改查) , 数据验证js(效验) , 封装js(相似相同的不断复用的js封装) , 计算结果js ,...原创 2018-09-16 13:10:21 · 3301 阅读 · 0 评论 -
系统架构师笔记(四)
十五、可靠性可靠度:系统在规定的条件下、规定的时间内不发生失效的概率。失效率:(风险函数)运行至此刻系统未出现失效的情况下,单位时间系统出现失效的概率。可靠度计算方式:1)、串联:R1*R2*R3....2)、并联:1-(1-R1)*(1-R2)*(1-R3)...1、容错技术动态冗余:通过故障检测、故障定位及故障恢复等手段达到容错的目的。主要方式:多重模块待机储备,当系统检测到某工...原创 2018-10-16 22:25:13 · 282 阅读 · 0 评论 -
SOA和微服务架构的区别?
文章来源:1 https://www.zhihu.com/question/378084262 https://www.zhihu.com/people/xu-bing-yuan/activitiesSOA和微服务架构区别在网上看到了很多的说法,在这里给出贴出一份简介的回答。更加详细的回答可以参照:https://www.zhihu.com/question/37808426。...转载 2018-10-24 22:41:10 · 329 阅读 · 0 评论 -
B/S三层架构[转载]
三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。 1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。 2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。 ...转载 2018-10-27 15:43:14 · 31313 阅读 · 3 评论 -
利用Spring Cloud实现微服务(八)- 熔断机制
1. 熔断机制介绍在介绍熔断机制之前,我们需要了解微服务的雪崩效应。在微服务架构中,微服务是完成一个单一的业务功能,这样做的好处是可以做到解耦,每个微服务可以独立演进。但是,一个应用可能会有多个微服务组成,微服务之间的数据交互通过远程过程调用完成。这就带来一个问题,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调...转载 2018-11-03 14:52:22 · 347 阅读 · 0 评论 -
微服务架构—服务降级
1 、简介什么是服务降级?当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心交易正常运作或高效运作。如果还是不理解,那么可以举个例子:假如目前有很多人想要给我付钱,但我的服务器除了正在运行支付的服务之外,还有一些其它的服务在运行,比如搜索、定时任务和详情等等。然而这些不重要的服务就占用了JVM的不少内存与CPU...转载 2018-11-03 14:54:58 · 2633 阅读 · 0 评论 -
如何设计高可用的微服务架构
要点 动态的环境和分布式的系统,比如微服务,它们出现故障的几率更大。 发生故障的服务应该被隔离开来,实现优雅的服务降级,提升用户体验。 70%的故障都是因为代码变更引起的,所以有时候回退代码并不算是什么坏事。 如果发生故障,就要让它们快速而独立的发生。一个团队无法控制他们服务的依赖项。 ...原创 2018-11-03 15:47:11 · 1486 阅读 · 1 评论 -
SOA架构和微服务架构的区别
1.SOA架构和微服务架构的区别首先SOA和微服务架构一个层面的东西,而对于ESB和微服务网关是一个层面的东西,一个谈到是架构风格和方法,一个谈的是实现工具或组件。 1.SOA(Service Oriented Architecture)“面向服务的架构”:他是一种设计方法,其中包含多个服务, 服务之间通过相互依赖最终提供一系列的功能。一个服务 通常以独立的形式存在与操作系统进程中。各个...原创 2018-11-02 20:57:04 · 899 阅读 · 0 评论