Fuguo设计文档
来自ling
- fuguo设计文档 fuguo编码规范
- fuguo-core fuguo-config
- fuguo-cache fuguo-cache-config
- fuguo-db fuguo-db-api fuguo-db-hibernate4 fuguo-db-hibernate4-config
- fuguo-security fuguo-security-api fuguo-security-default fuguo-security-config
- fuguo-web fuguo-web-core fuguo-web-rest
- fuguo-job fuguo-job-core fuguo-job-web
- fuguo-attachment fuguo-attachment-core fuguo-attachment-web
- fuguo-workflow fuguo-workflow-core fuguo-workflow-web
- fuguo-message fuguo-message-core fuguo-message-web
- fuguo-ecommerce fuguo-ecommerce-core fuguo-ecommerce-web
- fuguo项目初始化
- fuguo-autoproject
- fuguo-samplecenter
- fuguo-log
- fuguo-Preference 系统关闭登录
- 项目重构
- 项目部署 可视化文档管理 问卷调查 环境安装模块 项目初始化与配置 CXFWebservice使用
- 概要设计文档
总体设计
- 在上一版本为基础重构,使架构更适合于云计算,支持高并发,大业务
- 使用服务注册中心,动态的注册和发现服务,使服务的位置透明。并通过在消费方获取服务提供方地址列表,实现软负载均衡和Failover,降低对F5硬件负载均衡器的依赖,也能减少部分成本。优化服务URL配置管理
- 通过maven管理模块间的依赖关系,并自动画出应用间的依赖关系图,以帮助架构师理清理关系,防止重复依赖的坏味道
- 通过模块功能细化,并在dubbo 监控中心监控服务的使用情况要,将服务现在每天的调用量,响应时间,都统计出来,作为容量规划的参考指标,其次,要可以动态调整权重,在线上,将某台机器的权重一直加大,并在加大的过程中记录响应时间的变化,直到响应时间到达阀值,记录此时的访问量,再以此访问量乘以机器数反推总容量。解决服务的调用量越来越大,服务的容量问题就暴露出来,这个服务需要多少机器支撑?什么时候该加机器?
- 当已有很多小服务,可能就需要组合多个小服务的大服务,为此,可以增加一个中间层,暴露一个新服务,里面分别调其它小服务,这样的新服务业务逻辑少,却带来很多开发工作量。
- 并不是所有服务的访问量都大,很多的服务都只有一丁点访问量,却需要部署两台提供服务的机器,进行HA互备,此时可能需要让服务容器支持在一台机器上部署多个应用,可以用多JVM隔离,也可以用ClassLoader隔离
- 服务应用和Web应用是有区别的,它是一个后台Daemon程序,不需要Tomcat之类的Web容器。只需简单的Main加载Spring配置即可,并提供Maven模板工程,只需mvn dubbo:generate 即可创建一个五脏俱全的服务应用。
物理架构
[修改架构图|http://www.ling2.cn:7090/wiki/index.php/%E6%96%87%E4%BB%B6:Fuguowulijiagoutu.png]