当前位置:文档之家› 软件架构设计实战

软件架构设计实战


物理架构与数据架构
• 三台Java服务器,单台消息队列服务器,两台数据库MySQL服务器(主 • 备),1台负载均衡服务器,软件架构大致是这样的:
运行架构
• 硬件服务器系统:linux centos 6.5 64x • 负载均衡服务器:Haproxy or LVS or Nginx
• Java应用服务器:tomcat or jetty or jboss
软件架构设计实战
演讲人:汪福才 QQ:137071249
软件架构设计实战目录
• 1.软件开发的过程 • 2.软件开发中的架构设计
• 3.软件开发中的分层设计
• 4.软件开发中的数据库设计 • 5.软件开发的代码重构 • 6.软件开发的测试 • 7.软件开发的部署与上. 可以给指定的公司员工发送消息.也可以群发通知消息。
• 2. 可以发短信给客户。比如客户的生日祝福等等 • 3. 可以为公司的B2C电子商务平台提供手机验证功能。 • 4. 可以为公司的系统提供预警功能。 • 5. 可以……….
逻辑架构设计
• 1. 短信发送模块(既调用短信提供商SP的接口) • 2. 短信存储与查询模块
• 消息队列服务器:rabbitmq • 数据库服务器: mysql 5.6
应用服务器的分层架构
• Java一般的技术选型与分层架构 • MVC框架:SpringMVC
• 业务层框架:Spring
• 持久层框架:JPA /Hibernate/Mybatis/JDBC • 连接池:DBCP/c3p0 • 表示层技术:JSTL /Freemaket/Velocity
软件开发中的架构设计
• 1.逻辑架构设计(模块划分+接口定义+领域模型) • 2.开发架构(技术选型+文件划分)
• 3.物理架构(硬件分布+软件部署+方案优化等)
• 4. 运行架构(技术选型+流程划分+同步关系) • 5. 数据架构(技术选型+存储格式+数据分布)
实例:短信平台
• 有个公司AAA,他们想搞一个短信消息提醒的功能既短信平台 需要平台可以实现以下功能:
• 3. 短信统计模块
• 4. 短信对外接口模块
B2C电商 HR CRM
其他系 统预警 短信平台
SP
开发架构(技术选型+文件划分)
• 1.系统要求日均千万级别的短信量,有并发量的支持。 • 2.短信分为营销性质短信与非营销性质短信。
• 3.要求高可用,7*24小时不间断运行,低延迟。
• 最终公司采用Java语言开发,采用消息队列rabbitmq来作为存储中介, • 持久化数据采用mysql数据库,考虑到数据量比较大,采用按照日分表。 • 架构一般采用这样
软件上线
• 软件上线发布流程。 • 1.上线时间点。
• 2. 遇到问题回滚方案。
• 3. 上线后测试。 • 4. 运行状态监控。
浅析职业规划与学习方法
• 女生与男生的IT职业选择。 • 大公司与小公司的选择.
• 学习方法分析与建议.
• 前景规划与展望.
提问与答疑
谢谢大家!
数据库的设计
• 数据库设计工具:PowerDesigner • 大致设计类似于是:
软件开发的代码重构
• 1,如何理解代码重构? • 2,怎么样代码重构?
• 3,代码重构需要注意的问题?
• ………………………
软件开发的测试与上线工作
• 软件开发后的测试 • 1.单元测试
• 2. 集成测试。
• 3. 压力测试。 • 4. 性能测试与调优
相关主题