
架构
imduan
这个作者很懒,什么都没留下…
展开
-
RBAC模型
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。(如下图)角色是什么?可以理解为一定数量的权限的集合,权限的载体。例如:一个论坛系统,“超级管理员转载 2016-03-28 11:56:20 · 543 阅读 · 0 评论 -
设计架构相关
封装和抽象抽象是提取共性,把核心逻辑和业务逻辑分层处理。 封装是隐藏细节。抽象面对复杂的世界, 把问题归类,提取本质的东西, 定义个模型和框架, 用这个模型或者框架来应用于所有的类似场景. 封装定义边界, 信息隐藏原则. 降低耦合. 可以对过程和数据进行封装. 从而提高系统应对变化的能力,可插拔,等 面向接口编程是一个具体应用.避免跨级调用数据流A—>B—>C的流转. 尽量避免跨级通知,否原创 2017-03-08 16:53:31 · 374 阅读 · 0 评论 -
状态机FSM
简介FSM(Finite State Machine)有限状态机. 可以分为两类: - Mealy状态机 : 次态=f(现状,输入),输出=f(现状,输入) Moore状态机 : 次态=f(现状,输入),输出=f(现状) 图片摘自某个视频: https://www.youtube.com/watch?v=S352lyPZP00转载 2017-03-22 09:07:23 · 822 阅读 · 0 评论 -
重构-卫语句
单一出口 规则,其实不是那么有用。导致函数嵌套太深, 代码主逻辑不够突出. 大量的嵌套条件分支是很容易让人望而却步的代码,我们应该极力避免这种代码的出现 保持代码清晰才是最关键的.条件表达式通常有2种表现形式。 第一:所有分支都属于正常行为; 第二:条件表达式提供的答案中只有一种是正常行为,其他都是不常见的情况;这个时候采用卫语句. 应该单独检查该不常见的条件,并且直接返回.转载 2017-02-03 14:59:32 · 1363 阅读 · 0 评论 -
maven相关
maven是什么之前有ant, 但是太灵活, 配置复杂. 按照约定>配置的原则. 更多的用约定代替配置, 使得项目目录结构, 开发过程, 编译,发布等环节标准化. maven : 构建, 依赖管理, 仓库.dependencyManagementmaven dependencies与dependencyManagement的区别 dependencyManagement:只是声明, 未真正引转载 2017-02-04 16:54:56 · 319 阅读 · 0 评论 -
系统间的通信(BIO,NIO,AIO)
同步阻塞IO (BIO)阻塞方式,只有当读到了流或将流写入操作系统后,才会释放资源.同步非阻塞IO (NIO)事件驱动思想,Reactor模式.我们知道Reactor模式首先是事件驱动的,有一个或多个并发输入源,有一个Service Handler,有多个Request Handlers;这个Service Handler会同步的将输入的请求(Event)多路复用的分发给相应的Request Han转载 2016-09-10 16:52:23 · 322 阅读 · 0 评论 -
Dubbo服务治理
|现象 | 问题 | 解决方案| | 服务越来越多|URL配置管理, F5硬件单点压力大 | 注册中心, 服务动态发现 | |服务间依赖关系复杂 | | 自动绘制服务依赖| | | |转载 2016-10-15 18:12:09 · 1454 阅读 · 0 评论 -
微服务的理解
为什么我们需要微服务?它能给企业带来什么价值背景传统企业的IT软件大多都是各种独立系统的堆砌,这些系统的问题总结来说就是扩展性差,可靠性不高,维护成本高.SOA的软件架构专门针对这些问题给出了一套解决方案. 由于SOA早期均使用了总线模式,这种总线模式是与某种技术栈强绑定的,比如:J2EE。这导致很多企业的遗留系统很难对接,切换时间太长,成本太高,新系统稳定性的收敛也需要一些时间。最终SOA开起转载 2016-09-15 18:48:41 · 3069 阅读 · 0 评论 -
cluster 容错
failover (缺省)失败自动切换,当出现失败,重试其它服务器。 通常用于读操作,但重试会带来更长延迟。 可通过retries=”2”来设置重试次数(不含第一次)。failfast快速失败,只发起一次调用,失败立即报错。 通常用于非幂等性的写操作,比如新增记录。failsafe失败安全,出现异常时,直接忽略。 通常用于写入审计日志等操作。failback失败自动恢复,后台记录失败请求,定转载 2016-07-14 11:48:42 · 306 阅读 · 0 评论 -
谈谈封装
封装的故事什么是封装, 先举个例子.封装的理解什么是封装, 职责的划分, 对信息的封装, 对逻辑的封装, 对复杂性的切分.原创 2019-02-01 17:07:37 · 278 阅读 · 0 评论