开发流程与各层软件选型

以下内容为最终结论,为什么这样做,原因不具体阐述。

 

1、需求

在了解了用户的需求后,按照用户分类,使用流程分类两个方向进行功能要求整理,形成文字WORD。并报请项目组进行讨论,通过后,才能进入下一步。

 

2、数据库设计:

使用类PowerDesiner或相似的数据库设计工具,在任何WEB项目开展前,必须进行数据库设计,然后报请项目组讨论,通过后,才能进入下一步。

 

3、界面设计:

使用原型工具,或直接HTML进行原型设计,然后报请项目组讨论,通过后,才能进入下一步。

 

4、开发框架

统一使用项目组的JFinal框架,新项目不允许使用其它框架进行开发,旧项目维护除外。

 

5、数据库

选择了MariaDB。要求使用Innodb引擎,不允许使用Myisam引擎。生产数据库必须开启二进制日志和慢查询日志。

 

6、数据缓存

统一使用项目组提供的基于AOP的数据Memcached缓存技术,要求必须做到实时更新,不能当作Cache使用(指更新完数据库,不能及时在界面上显示出来)。

 

7、数据库连接池

使用开源的Druid进行连接数据库,不允许使用其它比如dbcp或c3p0,要注意在Druid中对SQL使用效率高的SQL语句进行优化。

 

9、关于SQL语句

原则上不允许出现复杂查询,在查询的WHERE条件中必须要有索引,或直接通过主键进行查询,如需要进行联合查询,视使用频率,如多,则需添加冗余字段等方式规避掉联合查询。

最好不要出现inner join ,left join ,right join等字样,不要出现子查询。不要出现group by 

 

10、操作系统

选择Centos x64 6.4

 

11、WEB

选择Tomcat 7 x64

 

12、负载均衡器

采用HaProxy

 

 

 

 

 

posted @ 2013-05-10 14:47  糖豆爸爸  阅读(594)  评论(0编辑  收藏  举报
Live2D