新的软件架构: Synergistic Software Architecture
来源:互联网 发布:c语言点滴pdf百度云 编辑:程序博客网 时间:2024/06/04 18:40
网络程序出现,就有了“请求”-“响应”(Request-Response / R-R)式的软件架构,其出现至今已经很久很久了,或许是人类社会中各系统之间的交互规则,决定了B/C/W – S类型的R-R型架构, 该种架构类型满足了人类社会的信息系统需求, 同时也影响了程序工程人员的思想。
这里分析当下B/C/W - S构架中的 S 端:
S端大都以多层服务器架构型来实现的,如下:
为了实现服务器处理的高性能,分别对Server Cache DB 层做水平的扩展, 所有的数据交互仍然是R-R型的交互方式, 即请求数据,响应数据。
例如 当用户发来一个请求Request1,时,请求数据,以及处理该请求所需的其它数据流为:
loadbalance -> S1 -> C1 -> DB1
当数据返回的路线为
DB1 -> C1 -> S1 -> loadBalance -> 用户
然而分析 用户的请求,有:增删改查
其中有些并不需要进行复杂的计算, 像 查找一个数据,删除某数据, 这个任务完全可以由Cache层实现。并不需要Server处理,而Server只注于其自身的业务就行。
而协同架构中, 其于系统的观点,从各个子系统的功能角度出发, 将S端的各子系统放置于平等的地位, 同时利用其主动推送数据的功能, 其架构图如下:
在这种架构下,一个请求Request1到来时处理流程如下:
一、在 需要复杂处理的情况下,数据流向为:
1. Request1 -> S1
->C1
2. C1 -> S1 (C1 把所需的数据推送给S1)
3. S1 处理数据后返回给 -> loadBalance -> 客户
二、在只有查询的情况下
数据请求
Request1 -> C1
数据返回
C1 -> loadbalance -> 客户
或许只是R-R的思想影响了你系统的性能, 尝试一下 上面这个方案。
又或是人性的缺点影响了你系统的性能呢 ?
- 新的软件架构: Synergistic Software Architecture
- 软件架构(software architecture)
- Handbook of Software Architecture 软件架构手册 [原创翻译]
- Handbook of Software Architecture 软件架构手册 [翻译]
- Software Architecture(软件体系结构)
- 什么是软件系统的架构(Architecture)?
- 什么是软件系统的架构(Architecture)?
- 什么是软件系统的架构(Architecture)?
- 软件工厂 架构以及元数据(software architecture and metadata)
- 软件架构(Architecture)及设计
- Software Architecture
- software architecture
- Software Architecture
- Software Architecture
- 软件系统的架构(ArchitECture)有两个要素是什么?
- 唯爱小粽子:软件架构的条件(architecture prerequisite)
- Rational Software Architecture的小技巧
- 新的软件架构D/S?
- PHP接收跨域请求
- Hdu 5812 Distance(三种操作. 1.插入x 2.删除x 3.在集合中找到一个数y,使得y->x,每次能除以一个素数或者乘上一个素数,问最少的操作次数)
- LA3635 Pie (二分判定)
- java多态特性
- spring mvc对静态资源的处理
- 新的软件架构: Synergistic Software Architecture
- HDU 5575 Discover Water Tank 并查集+左偏树
- 文件上传
- IO多路复用 epoll
- ComputeScreenPos 详解
- JavaEE程序猿之吃的是草挤出的是奶(12)
- 数据库隔离级别详解
- in_array()
- QT定时器的一些注意