对DotNet分布式应用搭建的考虑(引用)
设计前的考虑和准备工作
1 对业务需求的理解重要性远远胜于对技术架构的理解
2 架构包含技术架构和业务架构
3 没有万能和通用的架构,只有符合自身业务需求的架构
4 架构本身的复杂性要截至在架构设计阶段
5 扩展性和健壮性是架构设计要考虑的重要内容.
6 第三方工具,开源组件,EnterpriseLib都可借鉴,但绝对不是照单全收
架构设计前需求准备的相关知识
1 对业务系统中业务的宏观和整体理解.
2 对DotNet分布式技术的相关知识储备
3 对Rational统一过程4+1视图的理解
4 对架构,组件,充用,设计模式,第三方工具组件的学习和借鉴.
业务层面对架构的影响
1 能否画出全局的用例视图,用例驱动体现在哪里?到哪个粒度
2 逻辑视图是面向对象设计之本
3 逻辑视图在架构阶段要做到哪个层次系统/子系统/模块/单元
4 什么在决定部署视图?
5 实施视图和逻辑视图的关系,实施视图作用
技术层面对架构的影响
1 技术层面重点体现在了实施视图和部署视图里面.
2 技术层面重点关注的是非功能性需求.
3 异常/日志/安全/性能/队列/缓存/离线/
4 系统管理/工作流/公用类/公用组件
5 技术架构的缺陷泄漏对应用系统是致命打击.
分布式应用如何构建
1 现有的分布式技术Remoting // Web Service
2 如何选择分布式技术:业务需求,性能,开发难易工作量
3 智能客户端与分布式应用的关系
4 出现前台展示既有WinUI又有WebUI的时候的统一考虑
5 选择Remoting+IIS Hosting与Web Service的优缺点对比
6 要尽早出原型对架构进行验证.
对于系统的异常和日志需求
1 首先理解清楚业务或系统本身对异常和日志的需求
2 异常和日志一定要配合使用,一些不适合抛给用户的异常要通过后台日志记录下来
3 业务对日志有需求,如登录日志,操作日志
4 完善的异常日志功能方便后期系统的维护,出现问题后的跟踪和分析
5 微软的AppBlock和Log4Net都可以借鉴,但要分析利弊。
对于系统的安全性的需求和考虑
1 Remoting的安全性问题,远程暴露的服务接口是否安全
2 系统的登录和验证机制
3 数据传输的安全性问题
4 存储在数据库中的业务数据的安全性
5 部署到客户端的程序集的安全性
对于系统缓存的考虑
1 要好了系统性能大幅度提升,用不好比不用还糟糕
2 对于客户端缓存和服务器端缓存的选择问题
3 对于缓存引起的同步和并发问题的考虑和解决
4 扩展性和健壮性是设计时要考虑的重要内容
业务实体的选择问题
1 没有使用O/R Mapping的时候千万别搞自定义类做实体
2 DataSet (虽对性能有影响,但开发简洁性和效率提升)
3 类型化和非类型化的优缺点一定要搞的很清楚.
4 再次强调-业务实体和数据库表间无一一对应关系.
5 与OO的一些区别:对象和对象操作分离开了?利弊在哪里?
转载于:https://www.cnblogs.com/jhtchina/archive/2007/07/10/813026.html
对DotNet分布式应用搭建的考虑(引用)相关推荐
- spring cloud+dotnet core搭建微服务架构:配置中心(四)
前言 我们项目中有很多需要配置的地方,最常见的就是各种服务URL地址,这些地址针对不同的运行环境还不一样,不管和打包还是部署都麻烦,需要非常的小心.一般配置都是存储到配置文件里面,不管多小的配置变动, ...
- spring cloud+dotnet core搭建微服务架构:配置中心续(五)
前言 上一章最后讲了,更新配置以后需要重启客户端才能生效,这在实际的场景中是不可取的.由于目前Steeltoe配置的重载只能由客户端发起,没有实现处理程序侦听服务器更改事件,所以还没办法实现彻底实现这 ...
- spring cloud+dotnet core搭建微服务架构:Api网关(三)
前言 国庆假期,一直没有时间更新. 根据群里面的同学的提问,强烈推荐大家先熟悉下spring cloud.文章下面有纯洁大神的spring cloud系列. 上一章最后说了,因为服务是不对外暴露的,所 ...
- spring cloud+dotnet core搭建微服务架构:服务发现(二)
前言 上篇文章<手把手教你使用spring cloud+dotnet core搭建微服务架构:服务治理(-)>实际上只讲了服务治理中的服务注册,服务与服务之间如何调用呢?传统的方式,服务A ...
- 手把手教你使用spring cloud+dotnet core搭建微服务架构:服务治理(-)
背景 公司去年开始使用dotnet core开发项目.公司的总体架构采用的是微服务,那时候由于对微服务的理解并不是太深,加上各种组件的不成熟,只是把项目的各个功能通过业务层面拆分,然后通过nginx代 ...
- nexus 3.x搭建私库引用私库
1. 官网下载地址: https://www.sonatype.com/download-oss-sonatype 下载后: 2. 解zip文件 进入bin文件: 在cmd窗口输入指令nexus.ex ...
- cesium 知识整理--搭建Cesium(引用cesium.js方式)
资料下载: 学习网址: cesium学习中文网. cesium:https://cesium.com/docs/ 官网下载地址: https://cesiumjs.org/downloads/ Git ...
- IdentityServer4系列 | 快速搭建简易项目
一 .前言 从上一篇关于 常见术语说明中,主要是对「IdentityServer4」的说明,以及其中涉及常见的术语的表述说明,包括对身份认证服务器.用户.客户端.资源以及各个令牌等进行对比区别说明. ...
- spring cloud+.net core搭建微服务架构:Api授权认证(六)
前言 这篇文章拖太久了,因为最近实在太忙了,加上这篇文章也非常长,所以花了不少时间,给大家说句抱歉.好,进入正题.目前的项目基本都是前后端分离了,前端分Web,Ios,Android...,后端也基本 ...
最新文章
- 1.2 CentOS6 命令行配置静态IP地址步骤
- JAVA基本字节类型
- 德鲁克《新企业》学习收获
- wxWidgets:wxChildFocusEvent类用法
- Linux文件inode用完一例
- 剑指offer面试题48. 最长不含重复字符的子字符串(滑动窗口)
- infor wms 中英文对照_WMS系统中波次管理有多大作用
- win7计算机窗口无法最小化,Windows7系统任务栏不显示最小化窗口的解决方法
- mysql 清除bin文件内容_mysql 日志文件mysql-bin文件清除方法
- 国服最强王者之最良心王者
- 2022蓝桥杯A组Python
- C++机器学习库整理
- testufo测试刷新率测试_高刷屏比低刷屏强多少?用UFO Test工具一目了然
- 强制更新组策略命令gpupdate /force 必需客户端否则无效
- 多人在线屏幕分享工具-join me
- 中考计算机操作题试题文档,初中信息技术中考excel操作题
- Elasticsearch入门(一)基本介绍与安装
- 去深圳见了几个大佬,我悟了……
- 好声音”杨坤组大森蝶晋级 被传与刘珂有恋情
- 可靠性测试设备技术含量_智能降噪耳机可靠性测试标准
热门文章
- 实施工程师——实施中最核心的问题
- goldengate源端意外宕机,传输进程终止,导致OGG-01031报错
- 安装 Oracle Database PSU 10.2.0.4.2 步骤
- oracle 11gR2 新增deinstall命令来卸载grid和database
- eclipse自动补全
- RESTful API接口文档规范小坑
- 13.Java为什么不支持多继承
- 保存对象报错with two open Sessions
- 交换机基础设置之vtp管理vlan设置
- asp.net超过字数限制用省略号...表示