这种程序估计找不到下载吧,除了商业上的原因之外,这种东西都是在很长的时间内不断积累的,一般不会是一次写成,所以本身就不具备系统性,很难提出成一个完整的东西来,更谈不上提供代码下载了……要完成这么一个东西,是很麻烦的……随便说两句吧
你很关心技术,那从技术谈起。从技术上来讲,这样庞大复杂的东西最好不要采用php,php是一种轻量级的Web开发语言,虽然也能看见网上有php的较大型应用,但实际上那会要求很多扩展,比如C开发的组件等等,实际上php在这种应用中只起到连接数据库、中间层和表现层的作用,这样整体开发技术要求更多的是其他方面的能力,php倒是次要的了。推荐采用.net或者java,当然这里面起决定作用的往往并不是技术本身,是其他东西。对于这样的系统,抛开技术,从应用上具体来讲,最初的设计最重要的会是两个方面。一是作为系统基石的用户权限系统设计,二是作为应用主体的论坛分类分级方式,这两者需要从数据库设计开始尽可能作的足够灵活,保证高扩展性。在表现层,这样高流量的系统,通常采用静态页面输出,供大量用户浏览,这种方式和一般小并发量的系统构架有所不同,最好能有一个统一的页面输出接口,并且要求有一个足够灵活的规则,需要周详的设计和考虑。服务器端非常重要的还有Web服务器和中间层组件,这样的大型系统需要详细考虑服务器的优化,充分利用服务器的各种特性,例如服务器端缓存、数据库链接池管理、数据库和业务中间层等等。常见的Apache Web服务器、.NET、J2EE服务器都有各种缓存技术,php在Apache上也有相应的缓存技术应用,还有Pear:DB这样的数据抽象层,.NET和J2EE就更不用说了。总之,需要对Web服务器和应用服务器上的优化有所了解。数据库本身也是一个非常重要的方面,这样大数据量的应用系统,如何充分的优化数据库,提高性能也是非常重要的。例如对数据库物理结构进行规划,优化索引、存储过程,优化数据库结构等等。
其实技术在很多时候并不是最重要的,了解具体业务,了解业务需求,做出相符合的系统,或者了解你的老板,增加和老板的沟通,让他了解你的想法并支持你,这些可能来得都要比技术本身更重要。通常这样的系统都是一步一步建立起来的,在前期运行阶段很可能远远没有这么复杂,需要经过一段较长的时间运作才能逐渐丰富,所以在最初也没有必要考虑的太复杂。或者说,没有到那个时候,你也无法考虑到这些问题。
最后,不谈技术和业务,谈谈自己。每个人都具备一定的能力,但是更多的总是无法达到的。如何发挥自己的能力,逐渐达到自己的目标,是需要思考的。如果这个系统你可以一举而就,那么你就高人了,说得俗一点,用金钱来衡量,你的月薪怎么也要到5位数了吧。但是高人总是很少的,从你的问题来看,你对php技术比较熟悉,但是在大型系统开发上还没有什么经验。对你来说,也许应该考虑,如何在满足业务需求或者老板基本满意的情况下,利用可以利用的资源,让自己的能力伴随这个项目一起成长发展起来,你也就不虚此行了。