爱说说技术原理方案的定选思考过程(一)

简介:
 
最近花了三天,写了 秋色园 的另一个频道,“ 爱说说 ”频道: 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写的比较差,有时候会卡,这个得赶紧优化下。
 
最后本节就先写到这了,欢迎大伙乱弹弹。



     本文转自cyq1162 51CTO博客,原文链接:http://blog.51cto.com/cyq1162/595589
,如需转载请自行联系原作者

相关文章
|
传感器 监控 安全
闭环反馈系统原理概述
有时,为了获得系统的一致性和稳定性并产生控制系统的期望输出,我们使用反馈回路。反馈只不过是输出信号的一部分。这个概念在控制系统中最常见和最重要,以实现输出的稳定性。根据反馈连接,控制系统分为两种类型。它们是开环控制系统和闭环控制系统。下面简单介绍下闭环反馈系统。
2648 0
闭环反馈系统原理概述
|
21天前
|
负载均衡 应用服务中间件 Linux
深入浅出学习透析Nginx服务器的架构分析及原理分析「底层技术原理+运作架构机制」
深入浅出学习透析Nginx服务器的架构分析及原理分析「底层技术原理+运作架构机制」
35 0
|
21天前
|
存储 缓存 监控
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(数据更新场景策略和方案分析)
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(数据更新场景策略和方案分析)
8 0
|
21天前
|
存储 缓存 监控
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(场景问题分析+性能影响因素)
【分布式技术专题】「缓存解决方案」一文带领你好好认识一下企业级别的缓存技术解决方案的运作原理和开发实战(场景问题分析+性能影响因素)
32 0
|
7月前
|
消息中间件 缓存 NoSQL
程序员快来学习缓存层场景实战数据收集—技术选型思路及整体方案
根据以上业务场景,项目组提炼出了6点业务需求,并针对业务需求梳理了技术选型相关思路。 1)原始数据海量:对于这一点,初步考虑使用HBase进行持久化。 2)对于埋点记录的请求响应要快:埋点记录服务会把原始埋点记录存放在一个缓存层,以此保证响应快速。关于这一点有多个缓存方案,稍后展开讨论。 3)可通过后台查询原始数据:如果直接使用HBase作为查询引擎,查询速度太慢,所以还需要使用Elasticsearch来保存查询页面上作为查询条件的字段和活动ID。
|
8月前
|
监控 安全 Java
高性能服务器设计思路和方案
高性能服务器设计思路和方案
71 0
|
消息中间件 存储 中间件
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(中)
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(中)
120 0
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(中)
|
SQL 关系型数据库
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(上)
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(上)
153 0
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(上)
|
存储 运维 负载均衡
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式技术特别及问题分析
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式技术特别及问题分析
185 0
【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式技术特别及问题分析
|
数据可视化 数据挖掘 大数据
方案_技术方案|学习笔记
快速学习方案_技术方案
129 0
方案_技术方案|学习笔记