像操作系统一样的论坛系统

前几天,写了一个“论坛程序的发展方向”,第四部分提到论坛程序应该参考windows的构架,将论坛程序构造成一个所有网络服务的基础支撑平台,在此基础上,可以二次开发出各种网络服务,比如:博客、WIKI、威客、网摘、问吧等等,当然也包括现在的论坛一样的系统。
这篇文章将尝试构思一下这样的“论坛系统”(以下称“基础论坛系统”)应该由那些功能和特征:
一、标准化数据库操作接口
   作为一个基础论坛系统,应该提供一个标准的数据库操作接口,这个接口应该屏蔽掉所有数据库的个性特征。也就是说,在二次开发的时候,都无须知道整个基础论坛系统是使用何种数据库进行存储。同时,基础论坛系统所使用的数据库发生变化的时候,也不影响其上的网络服务的服务。
二、完整且标准化的用户及用户权限体系
   基础论坛系统应该有一个基础的用户数据系统(包括注册、登陆、密码管理等服务),供给所有服务系统调用。同时基础论坛系统应该提供一个完整的可扩展的用户权限体系,一方面,自身需要对所有用户的权限进行管理,另一方面,也应该提供给服务系统进行用户权限管理的接口支持。
三、完善的“服务系统”管理机制
   作为基础论坛系统,并不直接的对用户提供服务,而是通过二次开发的服务系统来提供服务。所有,基础论坛系统必须对其上运行的“服务系统”拥有良好的管理机制;
   比如:对于“服务系统”的安装与删除,将完全通过有管理权限的用户通过基础论坛系统管理界面进行安装和删除。确保任何安装和删除操作都不会影响其他服务系统的运行(至少非致命的影响)。
四、指定部分通用服务系统的标准框架
   基础论坛系统同时也需要规定一些标准的服务系统的功能性借口。比如,对于BLOG系统,就应该有一个标准的接口规范,使得管理员可以任何时候服务系统的进行更换而不会对用户带来灾难性的影响。
    比如:BLOG系统必须支持一个标准的日志结构,使BLOG系统进行更换的时候,用户的数据不会发生灾难性的丢失。
五、标准的程序调用标准以及通道
   基础论坛系统应该规定一个标准的服务系统之间相互调用的协议,并且拥有一个调用通道,即任何两个服务系统之间可以使用标准的接口通过基础系统进行相互调用。
   也即使说,只要双方都基于标准的协议,那么一方并不需要知道另外一方究竟是什么系统甚至什么语言,而只需要通过标准的接口协议就可以了。
   比如:一个论坛系统与BLOG系统的互动,将用户的一个帖子推送到用户的BLOG中去。那么论坛系统在获得用户的这个操作指令后,就将在用户ID、帖子标题、帖子内容、帖子ID传递给基础论坛系统,基础论坛系统获得已安装的默认的BLOG系统,并且将这些数据发送给BLOG系统。这个时候,论坛系统与BLOG系统都不需要知道对方是谁,甚至对方存在与否都不用管。
六、支持基于事件的处理体系
   基础论坛系统应该提供一个事件处理机制,即任何服务系统可以在基础论坛系统中注册自己对某个事务的处理代码。
   比如:当用户登陆的事件发生后,触发“OnLogin”事件,执行所有已注册的事务处理代码(按照权限级别、注册先后、以及管理员设置的顺序)
七、支持跨站点(域名)的交互服务
   基础论坛系统必须建立完善的跨站点(域名)的交互体系,使任何网络服务可以分别在不同的网站、域名之间实现安全的交互操作。
……
以上构思不够细致与全面,希望抛砖引玉。有机会我将不断补充,同时非常希望有一个有远见的开发商能够实现,或者有一个有远见的投资商能够投资我,让我来实现。
更多相关文章
  • 上一篇<像操作系统一样的论坛系统>中,提到了一个概念,叫"基础论坛系统".后来在与朋友交流,以及回复的评论中看来,这个词用的不够贴切,其实,我所讲的"基础论坛系统"已经超越了论坛,而是基于整个网络服务来定义的.所以,这个构思,其实就是一个OS(操作 ...
  • RHEL6--部署phpMyAdmin与论坛系统
    一.rpm安装LAMP平台部署phpMyAdmin二.搭建wordpress个人博客系统三.搭建论坛系统一.rpm安装LAMP平台及部署phpMyAdmin1.phpMyAdmin简介及获取方法phpMyAdmin 是以PHP为基础而开发的一个以WEB方式来管理Mysql数据库的工具,phpMyAd ...
  • RHEL5服务篇—使用LAMP部署phpMyAdmin系统以及Discuz论坛系统
          在前面的文章中我们已经学会搭建LAMP环境了,并且已经成功的搭建好LAMP环境了,那么搭建好LAMP平台后我们该如何部署动态网站呢?今天我们就来以phpMyadmin和Discuz这两个系统为例,讲解如何在LAMP平台上构建动态网站.部署phpMyAdmin系统phpMyAdmin是一个 ...
  • 实验拓扑:         RHEL6.5_1-----CentOS6.5(vmnet1)----------(vmnet1)        RHEL6.5_2实验一:查看默认HTTP配置安装httpd.httpd-manual软件包启动httpd服务从浏览器访问默认首页.手册页找到默认红帽欢迎页面 ...
  • LAMP平台部署及应用二安装Discuz论坛系统
    LAMP平台部署及应用(二)安装Discuz!论坛系统具体步骤:n 服务器端的部署1. 准备工作首先,应准备一台能够解析PHP网页,支持数据库的网站服务器,其中Apache.PHP.MySQL组件的版本应符合Discuz!系统的最低要求,这里此前源码编译构建的LAMP平台为例,默认首页设置为inde ...
  • 安装Discuz论坛系统
    安装Discuz论坛系统Discuz论坛系统基于LAMP架构安装前工作在MySQL中新建一个数据库,并授权一个用户CREATEDATABASEbbs;GRANTallONbbs.*TO'bbsuser'@'%'IDENTIFIEDBY'admin123';--授权bbs数据给bbsuser用户所有权 ...
  • LAMP平台部署Discuz论坛系统
    构建Discuz!论坛服务器vDiscuz!论坛系统§Crossday Discuz!Board论坛系统§采用PHP和MySQL等数据库构建的高效论坛系统§可免费获得源代码用于学习.内部测试§用于商业目的时需要购买授权许可
  • 昨晚无聊,在帮朋友看一个站过程中碰到了个网站.论坛YxBbS2.3版,管理员弱口令admin admin/很容易就到了后台.进去之后,既没有备份,上传文件类型cer,asa,php等都被过滤了(在Saveupload.asp)尝试着在头像上传那里抓包修改然后nc上传,都失败了.折腾了许久,本来想放弃 ...
一周排行
  • 行行***的下拉菜单
  • 19、AngularJs知识点总结part-1
    1.AngularJs AngularJs是一款JavaScript开源库,由Google ...
  • 安装了phpMyAdmin之后出现"缺少 mysqli 扩展.请检查 PHP 配置"的提示,但是可以正常登陆,但是看着不舒服,查看资料显示是php编译的时候未开发mysqli扩展,有一个简单的解决 ...
  • linux与windows不同,会存在缓存内存,通常叫做Cache Memory.有些时候你会发现没有什么程序在运行,但是使用top或free命令看到可用内存会很少,此时查看Linux系统 /proc/meminfo ...
  •  1.linux中的DNS服务安装DNS服务:rpm -ivh /media/RedHat/RPMS/bind-9(tab)                先安装DNS服务器,在第一张光盘中rpm -ivh /med ...
  • 鉴于本人每次安装Ubuntu都要折腾一翻,特转贴贴于此处,大牛飘过--原文地址:http://www.linuxidc.net/thread--1.html1.首先了解一下TCP/IP 配置文件族: 先用N ...
  • 几天前和技术组里的网友聊天.一位网友他说自己抽烟不止,于是人们纷劝抽烟有害健康.于是在下把心中憋着的打油诗贴了出去:如今吸烟并不帅,要说深沉没由来,害了身子没人怪,戒了吸烟,人生更加精彩.结果他(臻勍)也回了一首:都 ...
  •  作者:周平儒
  • linux2.4版以后的内核默认都能够支持ipv6,所以起动后我们会发现网卡上有两个版本的ip地址.在目前的网络环境中,由于ipv6还没有广泛开始应用,所以ipv6地址无法带来更好的优势,相反在进行地址解时会拖慢时间 ...
  • JuniperSSG防火墙端口映射
    首先我们登陆到juniper防火墙控制界面 默认地址大家都知道(192.168.1.1)默 ...