QBlog

This blog will record the growth associated with the Autumn Garden distance and the history of the development progress and other relevant circumstances
Bulletin
Welcome to Autumn Garden official blog, please: download and use CYQBlog system, and make your comments and Recommendations.
Article Archive
Article
爱说说技术原理方案的定选思考过程
2011/4/24 0:34:56

最近花了三天,写了秋色园的另一个频道,“爱说说”频道:http://speak.cyqdata.com/

今天把“爱说说”的起源及技术方案的选型过程及想法给大伙说说

一:爱说说是什么?

说白了也没什么什么,可以说是微博、闪存、聊天室,什么都可以说。

二:爱说说的起源?

说要写“爱说说”,最直白的冲动是在博客园闪存闪多了,突然也闪出这么个名词,所以打算随意的折腾一下,于是就出来了。

三:爱说说的技术方案

1:回想往惜做过类似的:

1:在校的时候学习,都学着用Application来存聊天室的内容。

2:刚工作的时候,学到了内存表DataTable来存聊天室的内容。

3:工作有点久的时候,写一个webim[设计人员设计了和msn一样的界面],同样有群的功能,技术方案是内存表DataTable+数据库存储的方案。

博客园的闪存技术方案:

猜的:也许可能大概:是利用json+webservice+数据库的方案

2:爱说说的技术方案:

秋色园爱说说的技术方案[开始的方案]:

随着秋色园的向前优化,CYQ.Data不断的升级,MDataTable不断的优化。

于是很容易定位了一下爱说说的技术方案:

内存表MDataTable+XML

理由:

没什么特别,因为最近给CYQ.Data的MDataTable增加了WriteXml和ReadXml功能,

想着刚好能应用上。

秋色园爱说说的技术方案[现在的方案]:

在秋式开源团队里说了一下技术方案,有人不小说到了文本这个词,让我想起了另一种方案:内存表MDataTable+json+TXT

理由:

CYQ.Data.Table下的MDataTable对Json的支持是比较稳定的,刚好可以优化及增加一下其它功能,比如说MDataTable的Select功能。
再者不成熟的想了一下,秋色园用Access,二级域名不也能太高级,用TXT比较有创意一些。

3:方案的说法

用TXT文本来来当存储介质,这是一个比较有创意的想法,当然有很多人似乎要否定TXT,甚者有人说:“从前,有个PHP的论坛,用的是TXT做为数据库,后来它消失了”。

如果让我做论坛,我也不会选TXT做为存储介质,原因当然是论坛和“爱说说”是不一样的。

 

爱说说本身并没有多复杂的逻辑,也不会并生多大的数据量,说什么微博数据量大,你不是新浪腾讯或是搜狐的,瞎扯上这么高级别的数据量了,不现实,

再说数据量这么大,肯定是有米的,有米的都喜欢自己写一套的,写多几套也不是问题。

 

事实上,我看了一下博客园,平均一天就闪1000条,我用TXT测试到1万条,读取仍然很快。

所以完全不用担心,上升到2万3万10万呢,你说呢?

4:为啥不用Sqlite,好多人说用这个

简单想了一下,当初秋色园Access才并发了几十个写操作,就挂了,[大石头]传说[Access25个并发最多],SQLite在写这方面,也不太乐观,所以不考虑,为啥不考虑?

 

一开始的考虑本意是这样的:用户说过来的消息,然后集中到内存中,再定时的写数据。

 

后来想了想,不靠谱,因为内存回收是常有的事,不是数据得经常性的丢么,说句有的没的,大伙说的也没劲。

 

所以数据还是需要时时写的,所以用这种小型数据库没法支持这么大的并发写数据问题,所以,好像大伙都懂了。

 

于是用TXT文本,用Ajax循环发送1000条请求写数据,发现很安稳,安心了。

5:用TXT肯定是会遇到一些技术问题的

这些技术问题,这本不说先,下一篇为大伙解析,欢迎大伙留言爱说说。

四:爱说说的前台界面的设想

1:需要前端再设计,当前的界面是我瞎折腾的,不太成型,重新设计是必然。

2:JS前端,本人JS能力不及,兼容不了多浏览器,待再找个高手重写一下。

3:咋不用JQ?好多人问我:一是JQ的包大了点,二是比较重要的,我不会JQ,汗一个。

4:功能:还少很多,比如注册用户,及相关的查询,按日期的显示,“更多”的查询等。

5:目前js写的比较差,有时候会卡,这个得赶紧优化下。

最后本节就先写到这了,欢迎大伙乱弹弹。

Autumn Garden is QBlog the official site, created by the passing autumn, based on the framework data layers developed cyqdata support multi-user, multi-language, multi-database (access, mssql, oracle), directory level url and other powerful blog system
新浪微博粉丝精灵,刷粉丝、刷评论、刷转发、企业商家微博营销必备工具"
 LoveSpeak   Browse(4391)   Comment(0)   Tag 秋色园,爱说说技术原理方案的定选思考过程
:Register
  
Copyright © 2010-2020 power by CYQ.Blog - Autumn v2.0 All Rights Reserved