随笔分类 -  面试-系统架构

6.什么情况用接口,什么情况用消息
摘要:接口的特点是同步调用,接口实时响应,阻塞等待 消息的特点是异步处理,非实时响应,消息发送后则返回,消息队列可以削峰 一般对实时性要求比较高的功能采用接口 对实时性要求不高的功能可以采用消息,削峰时可以采用消息 阅读全文

posted @ 2017-12-03 22:36 Vindia

4.抽象能力,怎么提高研发效率
摘要:我们需要解决的问题,我们需要通过程序来解决这些问题 如何将问题抽象成计算机可以识别逻辑,通过抽象能力,把现实生活中的问题域转化成计算机中可以识别的抽象问题,然后就可以通过计算机中的处理方式来解决现实生活中的问题 阅读全文

posted @ 2017-12-03 22:32 Vindia

9.什么场景应该拆分系统,什么场景应该合并系统
摘要:拆分系统: 当系统通过集群的方式已经无法解决性能问题的时候,或者业务扩展到很大的时候,需要把拆分系统 按照业务的方式垂直拆分:将业务功能结合比较紧密的部分拆分成独立的系统,独立维护 按照性能瓶颈点拆分:将系统性能瓶颈点拆分出一个独立的系统,可以针对这个独立的系统集群部署,增加可伸缩性,提高系统整体的 阅读全文

posted @ 2017-12-03 22:21 Vindia

7.如果AB两个系统互相依赖,如何解除依赖
摘要:A >B,同时B >A 解除这种双向依赖的话,需要在AB之外增加一个C,用C封装A依赖的B的那部分功能,让A改为依赖C,C依赖B 然后就是这样 A >C,C >B,B >A 不过这样依然存在环路依赖 阅读全文

posted @ 2017-12-03 22:14 Vindia

3.介绍设计模式,如模板模式,命令模式,策略模式,适配器模式、桥接模式、装饰模式,观察者模式,状态模式,访问者模式
摘要:模板模式:就是基类封装好了业务逻辑,抽象出了不稳定的部分,让子类来实现,比如 命令模式: 策略模式:将变化的部分抽象成策略,通过替换不同的策略来完成业务逻辑处理的变化,比如超时活动价格策略 适配器模式:将现有的功能转换成已经给定的接口实现,比如:jdbc的适配器模式,jdbc定义好操作模式,不同的d 阅读全文

posted @ 2017-12-03 22:09 Vindia

2.哪些设计模式可以增加系统的可扩展性
摘要:可扩展性: 工厂模式 抽象工厂模式 观察者模式:很方便增加观察者,方便系统扩展 模板方法模式:很方便的实现不稳定的扩展点,完成功能的重用 适配器模式:可以很方便地对适配其他接口 代理模式:可以很方便在原来功能的基础上增加功能或者逻辑 责任链模式:可以很方便得增加拦截器/过滤器实现对数据的处理,比如s 阅读全文

posted @ 2017-12-03 21:59 Vindia

1.如何搭建一个高可用系统
摘要:高可用系统,就是说要保证系统在几乎任务时候都要有正常运行,功能正常 我们来看下哪些情况会造成系统不可用 单机系统下的可用性问题,从nginx->tomcat->db/soa来看,单点问题会影响系统高可用,比如要是这个这个链路上其中一个单点挂了,那么整个系统都不可用了 所以引申出来主备/集群模式,防止 阅读全文

posted @ 2017-12-03 21:48 Vindia

导航