自媒体毫无底线为什么国家底线演员表不禁止呢?

2728人阅读
技术视野/设计思想(12)
消息系统设计与实现
文/JC_Huang(简书作者)
原文链接:/p/f4d
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
首先我们来看一下市场上关于消息的实现是怎么样的。
简书的消息系统主要分了两种
简信的性质其实跟私信是一样的,是用户发送给用户的一则消息,有具体的信息内容。
而提醒,则是系统发送的一则消息,其文案格式是固定的,并且对特殊对象一般拥有超链接。
知乎跟简书一样,主要分了两种:
跟简书一样,使用户发送给用户的一则消息,也可以是管理员发送给用户的消息。
知乎的消息比简书的提醒有过之而无不及,知乎会对多条相似的消息进行聚会,以达到减轻用户阅读压力的体验。
消息的三种分类
通过两种产品的简单分析,得出他们的消息有两种分类,在这基础上,我们再加上一种:公告。
公告的主要性质是系统发送一则含有具体内容的消息,站内所有用户都能读取到这条消息。
所以,消息有三种分类:
公告 Announce提醒 Remind私信 Message
提醒的语言分析
我们从简书取一组提醒样本:
3dbe1bd90774 关注了你magicdawn 喜欢了你的文章 《单点登录的三种实现方式》无良程序 喜欢了你的文章 《基于RESTful API 怎么设计用户权限控制?》alexcc4 喜欢了你的文章 《在Nodejs中贯彻单元测试》你在《基于RESTful API 怎么设计用户权限控制?》中收到一条 cnlinjie 的评论你的文章《Session原理》已被加入专题 《ios开发》
分析句子结构,提醒的内容无非就是
「谁对一样属于谁的事物做了什么操作」
「someone do something in someone's something」
someone = 提醒的触发者,或者发送者,标记为sender
do something = 提醒的动作,评论、喜欢、关注都属于一个动作,标记为action
something = 提醒的动作作用对象,这就具体到是哪一篇文章,标记为target
someone's = 提醒的动作作用对象的所有者,标记为targetOwner
这就清楚了,sender和targetOwner就是网站的用户,而target是具体到哪一篇文章,如果提醒的对象不仅仅局限于文章,还有其他的话,就需要增加一项targetType,来标记目标是文章还是其他的什么。而action,则是固定的,整个网站会触发提醒的动作可能就只有那几样:评论、喜欢、关注.....(或者其他业务需要提醒的动作)
消息的两种获取方式
推 Push拉 Pull
以知乎为例
推的比较常见,需要针对某一个问题维护着一张关注者的列表,每当触发这个问题推送的条件时(例如有人回答问题),就把这个通知发送给每个关注者。
拉的相对麻烦一点,就是推的反向,例如每个用户都有一张关注问题的列表,每当用户上线的时候,对每个问题进行轮询,当问题的事件列表出现了比我原本时间戳大的信息就进行拉取。
而我们则根据消息的不同分类采用不同的获取方式:
通告和提醒,适合使用拉取的方式,消息产生之后,会存在消息表中,用户在某一特定的时间根据自己关注问题的表进行消息的拉取,然后添加到自己的消息队列中,
信息,适合使用推的方式,在发送者建立一条信息之后,同时指定接收者,把消息添加到接收者的消息队列中。
根据提醒使用拉取的方式,需要维护一个关注某一事物的列表。
这种行为,我们称之为:「订阅」Subscribe
一则订阅有以下三个核心属性:
订阅的目标 target订阅的目标类型 targetType订阅的动作 action
比如我发布了一篇文章,那么我会订阅文章《XXX》的评论动作,所以文章《XXX》每被人评论了,就需要发送一则提醒告知我。
订阅的规则还可以扩展
我喜欢了一篇文章,和我发布了一篇文章,订阅的动作可能不一样。
喜欢了一篇文章,我希望我订阅这篇文章更新、评论的动作。
而发布了一篇文章,我希望我只是订阅这篇文章的评论动作。
这时候就需要多一个参数:subscribReason
不同的subscribReason,对应着一个动作数组,
subscribReason = 喜欢,对应着 actions = [更新,评论]
subscribReason = 发布,对应着 actions = [评论]
订阅的规则还还可以扩展
用户可能会有一个自己的订阅设置,比如对于所有的喜欢的动作,我都不希望接收。
比如Knewone的提醒设置
Knewone提醒设置
所以我们需要再维护一个表:SubscriptionConfig,来存放用户的提醒设置。
并且,当用户没有提醒设置的时候,可以使用系统提供的一套默认设置:defaultSubscriptionConfig
如果我发布了一篇文章《XXX》,在我不在线的时候,被评论了10遍,当我一上线的时候,应该是收到十条信息类似于:「谁谁谁评论了你的文章《XXX》」?
还是应该收到一条信息:「甲、乙、丙、丁...评论了你的文章《XXX》」?
知乎在聚合上做的很优秀,要知道他们要实现这个还是挺有技术的:
关于这部分功能,我们还没有具体的实现方法,暂时也无法讲得更加详细。⊙﹏⊙
通过上面的分析,大概知道做这个消息系统,需要哪些实体类:
用户消息队列 UserNotify用户 User订阅 Subscription订阅设置 SubscriptionConfig消息 Notify
通告 Announce提醒 Remind信息 Message
说了这么多,整理一下整个消息流程的一些行为:
系统或者管理员,创建消息
createNotify (make announce | remind | message)
用户,订阅消息,取消订阅
subscribe, cancelSubscription
用户管理订阅设置
getSubscriptionConfig, updateSubscriptionConfig
用户,拉取消息
pullNotify (pull announce | remind | message | all)
用户,查询消息队列
getUserNotify(get announce | remind | message | all)
用户阅读消息
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
: {type: 'integer', primaryKey: true},
Save Remind
消息表,我们需要target、targetType字段,来记录该条提醒所关联的对象。而action字段,则记录该条提醒所关联的动作。
比如消息:「小明喜欢了文章」
target = 123,
Save Announce and Message
当然,Notify还支持存储公告和信息。它们会用到content字段,而不会用到target、targetType、action字段。
UserNotify
: {type: 'integer', primaryKey: true},
我们用UserNotify来存储用户的消息队列,它关联一则提醒(Notify)的具体内容。
UserNotify的创建,主要通过两个途径:
遍历订阅(Subscription)表拉取公告(Announce)和提醒(Remind)的时候创建新建信息(Message)之后,立刻创建。
Subscription
: {type: 'integer', required: true},
订阅,是从Notify表拉取消息到UserNotify的前提,用户首先订阅了某一个目标的某一个动作,在此之后产生这个目标的这个动作的消息,才会被通知到该用户。
如:「小明关注了产品A的评论」,数据表现为:
target: 123,
这样,产品A下产生的每一条评论,都会产生通知给小明了。
SubscriptionConfig
action: {type: 'json', required: true},
不同用户可能会有不一样的订阅习惯,在这个表中,用户可以统一针对某种动作进行是否订阅的设置。而默认是使用系统提供的默认配置:
defaultSubscriptionConfig: {
在这套模型中,targetType、action是可以根据需求来扩展的,例如我们还可以增加多几个动作的提醒:hate被踩、update被更新....诸如此类。
配置文件 NotifyConfig
服务层 NotifyService
NotifyService拥有以下方法:
createAnnounce(content, sender)createRemind(target, targetType, action, sender, content)createMessage(content, sender, receiver)pullAnnounce(user)pullRemind(user)subscribe(user, target, targetType, reason)cancelSubscription(user, target ,targetType)getSubscriptionConfig(userID)updateSubscriptionConfig(userID)getUserNotify(userID)read(user, notifyIDs)
各方法的处理逻辑如下:
createAnnounce(content, sender)
往Notify表中插入一条公告记录
createRemind(target, targetType, action, sender, content)
往Notify表中插入一条提醒记录
createMessage(content, sender, receiver)
往Notify表中插入一条信息记录往UserNotify表中插入一条记录,并关联新建的Notify
pullAnnounce(user)
从UserNotify中获取最近的一条公告信息的创建时间:&lastTime用lastTime作为过滤条件,查询Notify的公告信息新建UserNotify并关联查询出来的公告信息
pullRemind(user)
查询用户的订阅表,得到用户的一系列订阅记录通过每一条的订阅记录的target、targetType、action、createdAt去查询Notify表,获取订阅的Notify记录。(注意订阅时间必须早于提醒创建时间)查询用户的配置文件SubscriptionConfig,如果没有则使用默认的配置DefaultSubscriptionConfig使用订阅配置,过滤查询出来的Notify使用过滤好的Notify作为关联新建UserNotify
subscribe(user, target, targetType, reason)
通过reason,查询NotifyConfig,获取对应的动作组:actions遍历动作组,每一个动作新建一则Subscription记录
cancelSubscription(user, target ,targetType)
删除user、target、targetType对应的一则或多则记录
getSubscriptionConfig(userID)
查询SubscriptionConfig表,获取用户的订阅配置
updateSubscriptionConfig(userID)
更新用户的SubscriptionConfig记录
getUserNotify(userID)
获取用户的消息列表
read(user, notifyIDs)
更新指定的notify,把isRead属性设置为true
提醒的订阅、创建、拉取
提醒的订阅、创建、拉取
我们可以在产品创建之后,调用NotifyService.subscribe方法,
然后在产品被评论之后调用NotifyService.createRemind方法,
再就是用户登录系统或者其他的某一个时刻调用NotifyService.pullRemind方法,
最后在用户查询消息队列的时候调用NotifyService.getUserNotify方法。
公告的创建、拉取
公告的创建、拉取
在管理员发送了一则公告的时候,调用NotifyService.createAnnounce方法,
然后在用户登录系统或者其他的某一个时刻调用NotifyService.pullAnnounce方法,
最后在用户查询消息队列的时候调用NotifyService.getUserNotify方法。
信息的创建
信息的创建
信息的创建,只需要直接调用NotifyService.createMessage方法就可以了,
在下一次用户查询消息队列的时候,就会查询这条信息。
& 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!
应用开发过程中经常会处理对象间通信的问题,一般都是对象或接口的依赖和引用去实现对象间的通信,这在一般情况下是没问题的,但是如果相互通信的对象很多,可能会造成对象间的引用关系像蜘蛛网一样,这样会导致对象关系很复杂,难以维护的问题,解决这个问题的一个好方法是通过消息总线去解耦对象间大量相互引用的紧耦合的关系. 设计思路:被通信对象向消息总线发布一个主题,这个主题 ...
消息队列就是一个消息的链表. 可以把消息看作一个记录,具有特定的格式以及特定的优先级.对消息队列有写权限的进程可以向消息队列中按照一定的规则添加新消息:对消息队列有读权限的进程则可以从消息队列中读走消息.消息队列是随内核持续的. 消息队列的类型: POSIX消息队列以及系统V消息队列,系统V消息队列目前被大量使用.考虑到程序的可移植性,新开发的应用程序应尽量 ...
一.Kafka概述& & & Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素. 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决. 对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一 ...
回到目录 之所以把发消息拿出来,完全是因为微软的orchard项目,在这个项目里,将公用的与领域无关的功能模块进行抽象,形成了一个个的组件,这些组件通过引用和注入的方式进行工作,感觉对于应用程序的扩展性上有很大的提高,消息组件的提出是因为它的不固定性,从小方面说,项目模块的发消息的方式可能是不同的,有过模块是email,有的是数据库,有的是短信:而从大的方面 ...
回到目录 上一回写消息组件已经是很久之前的事了,这一次准备把消息组件后续的东西说一下,事实上,第一篇文章主要讲的是发消息,而这一讲最要讲的是收消息,简单的说,就是消息到了服务器之后,如何从服务器实时的发到指定客户端,当然,你可以使用JS的轮询,但由于种种原因,它并不被我推荐,呵呵. 准备知识: SignalR实现服务器与客户端的实时通信 WebSocket的 ...
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:192924次
积分:5706
积分:5706
排名:第4232名
原创:371篇
转载:96篇
评论:20条
文章:50篇
阅读:12334
阅读:2511
(8)(40)(2)(23)(11)(21)(31)(27)(20)(31)(33)(136)(12)(4)(3)(14)(8)(7)(3)(12)(2)(1)(1)(1)(3)(1)(1)(4)(1)(1)(1)当前位置:
在线旅游信息系统的设计与实现
来源: 联系QQ: 作者: 佚名 来源: 网络 发布时间: 13/05/09
【编者按】网学网计算机其他语言频道为大家收集整理了“在线旅游信息系统的设计与实现“提供大家参考,希望对大家有所帮助!客服咨询,网学网竭诚为您服务,本站永久域名: &计算机毕业设计着国家对地方旅游事业的支持;各地旅游风景的不断开发与各种优厚条件的不断出台;人们不同的旅行习惯与要求;旅行社不同的规章、制度与条件,使得开发一个功能齐全包含各种信息的旅行网站势在必行。《网络旅游信息系统的分析与设计》是在充分利用Web数据库高效的数据存储和管理能力,利用网络丰富的数据资源,采用Web数据库技术开发的一个稳定、时效、内容丰富的旅游信息发布和管理平台。它将旅游资讯和网络传播充分的结合,改变以往人们必须到旅行社的传统模式,方便人们获取各种旅游信息,给人们的出行带来方便。2&为什么开发网络旅游信息系统2.1&计算机网络已经成为生活得力助手2.1.1&计算机网络的基本概念计算机网络,其实就是利用通讯设备和线路将地理位置不同的、功能独立的多个计算机系统互连起来,以功能完善的网络软件(即网络通信协议、信息交换方式及网络操作系统等)实现网络中资源共享和信息传递的系统。它的功能最主要的表现在两个方面:一是实现资源共享(包括硬件资源和软件资源的共享);二是在用户之间交换信息。计算机网络的作用是:不仅使分散在网络各处的计算机能共享网上的所有资源,并且为用户提供强有力的通信手段和尽可能完善的服务,从而极大的方便用户。2.1.2&计算机网络在生活中的应用如今是一个&网络生活&的时代,以网络生活方式和网络工作方式为特征的&e社会&已经诞生。计算机网络也称为互联网技术,早已参透到人们生活的各个层面,从最初仅仅应用于军事和科教领域,到如今的医疗卫生、工业生产、企业发展、娱乐传播、日常家居生活无不显露出其强大的功能。电子邮件、电子购物、电子广告、电子商场、电子银行、电子报刊、电子教室、电子图书馆、电子论坛、电子会议、网上视频、网上游戏、网上招聘以及远程医疗、远程点播、招聘求职,在人们的生活中,这些早已不是陌生的词汇。互联网改变了人们的生活方式,使人与人之间的距离变得微小,人们不再身处于繁杂的书报纸张当中,毛泽东曾说过&读万卷书,行万里路&而如今我们不再需要&读万卷书&,网络便让我们&坐井观世界&,它将成为最大的信息资源空间,也将成为现今速度最快的传播媒体和沟通工具。2.2&计算机网络与旅游的完美结合随着人们收入水平的提高,可自由支配时间的增多,一个休闲时代正在来临。5+2的生活工作方式,三个黄金假期,不同程度的带薪休假,私家车的普及,高速公路网的建设,时尚的假日消费,人们的休闲需求不断膨胀,旅游作为休闲的一种方式,是人们离开日常工作、生活环境,到另一个地方,让身心得到放松,使精神愉悦。怎么样获得旅游信息呢?最集中传统的方式是到旅行社咨询,这不仅受到时间和地点的限制,也受到旅行社信息量是否全面的限制,因此我们开发了网络旅游信息系统。它充分利用网络广泛的资源和快速的传播效率,将旅游资讯和网络充分的结合,是采用web数据库技术开发的一个稳定、时效、内容丰富的旅游信息发布和管理平台。人们可以快捷的查询和浏览各地秀美风光、风土人情和旅行社的信息,甚至透过网络旅游信息系统人们可以作为一次虚拟旅游,它即将改变旅游的传统模式,使人们的出行旅游变得更简单易行。3&开发语言与工具的选择3.1&Web数据库技术随着网络的迅速发展,特别是技术和数据库技术的结合--网络数据库服务成为其核心服务之一。它能够把各种类型的信息资源,如静态的图像、文本、数据、视频和音频有机地结合起来,使用户能够在上浏览、查询和共享建立在服务器所有站点上的超媒体信息。基于的数据库访问技术是指:在客户端安装浏览器,作为用户输入查询条件和显示查询结果的交互界面。用户可以通过填写表格或输入关键字的方式来与进行交互,当用户单击表格上的按钮时,表格中的数据便发送到服务器。服务器介于浏览器与数据库服务器之间,负责用户输入信息的接收。服务器将数据传送至要被处理的脚本或应用程序,并在数据库中查询数据或将数据投递到数据库中。最后,服务器将返回结果插入到页面,传送至客户端以响应用户。这种交互性提高了用户参与的积极性。3.2&ASP(Active&Server&Pages)技术3.2.1&ASP技术简介ASP(Active&Server&Pages)是Microsoft公司提供的一种开放的、且可将HTML和脚本以及可重用的ActiveServer组件结合在一起的动态页面构造技术,以用于建立高效、动态、基于Web服务器的数据库应用程序访问环境。ASP采用将Script嵌入HTML文本的方式,把动态部分有机地融入静态的页面之中,同时采用面向对象的特征以及对ActiveX控件的扩展,可实现对Web数据库的动态访问。ASP对数据库的访问采用ADO(Active&Data&Objects)方式,即通过建立对象把访问数据库的细节高度抽象。ADO本身具有高速、简便以及低内存开销的特点。3.2.2&ASP的特点1.ASP脚本集成于HTML中,容易生成。页面的开发与HTML完全一致,用普通的编辑器即可。无须编译和连接即可直接解释执行。2、独立于浏览器。用户端只要使用可解释常规HTML代码的浏览器,即可浏览ASP所设计的主页内容。ASP脚本是在站点服务器端执行的,用户端的浏览器不需要支持它。3、面向对象,可以扩展ActiveXServer构件。在ASP脚本中可以方便地引用系统组件和ASP的内置组件,并能通过订制ActiveX服务器组件来扩充功能。4、与任何ActiveXScript语言兼容。ASP的文件后缀名为.asp,以区别同样可以包含Script的HTML文件。5、源程序码不会外漏。ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML代码,这样源程序不易被盗取。&本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT
本文选自计算机毕业设计论文文章部分只是部分简介,如需了解更多详情请咨询本站客服!QQ3710167
上一篇资讯:
下一篇资讯:
文章排行榜设用户信息(用户代码,用户名,密码,系统身份)存放一个名位user.txt的文件中,请编写程序实现用户信息的新增、修改密码、删除功能(实现新增和删除时,用户的系统身份必须是“系统管理员”),并能模拟用户的登陆。如果输入的用户代码和密码在文件中存在,则显示欢迎某某用户登录的界面和操作菜单(N.新增、M.修改密码、D.删除),以便用户完成相应操作,如果输入错误则提示用户重新输入(最多可以尝试三次)。
全部答案(共1个回答)
给你讲讲思路吧,
其实很简单的,只要一个循环语句就行了,最简单的就是for语句了.
具体方法:先输入你想要设置的密码.当要进入管理系统时,这里就用for...
用C语言实现一个简单的数据库系统并不太难,但也不能一下搞定,按照你的要求,怎么也得要三五千行代码和足够的设计/编码/调试的时间.
以前我倒是见过一个嵌入式系统...
这个论坛有相关的源代码,希望能帮到你
见红状况频发,我这是怎么了?
大家还关注
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区您所在的位置: &
IM系统架构设计之浅见
IM系统架构设计之浅见
本文把我近年来从技术上我对IM系统(即时消息的传输,不包括语音,视频,文件的传输)的理解和设计分享出来,浅薄之见,望大家别见笑,欢迎给出批评意见。
背景:除去大名鼎鼎的QQ这款即时聊天工具,还有许多细分行业的IM,比如淘宝阿里旺旺、网易泡泡、YY语音......。恰巧公司产品也要开发一款基于我 们自己行业的类IM系统,很有幸我担当了这个产品的架构师,核心代码编写、实现者。下面把我近年来从技术上我对IM系统(即时消息的传输,不包括语音,视频,文件的传输)的理解和设计分享出来,浅薄之见,望大家别见笑,欢迎给出批评意见。
一.网络传输协议的选择
目前我知晓的所有IM系统传输即时消息无外乎使用UDP、TCP、基于TCP的http这几种协议中的一种或几种。比如QQ主要采用UDP协议,MSN主要采用TCP协议,而且他们也都支持HTTP协议的代理模式。更多资料,请参加这篇文章。
我们该如何选择呢?
UDP协议实时性更好,但是如何处理安全可靠的传输并且处理不同客户端之间的消息交互是个难题,实现起来过于复杂;
HTTP协议属于扩展支持,我们在产品的初始阶段可以不用支持;
那就非TCP协议莫属了,要考虑的同样也有很多,特别是如果有海量用户的需求。如何保证单机服务器高并发量,如何做到灵活,扩展的架构。
二.应该选择什么格式的数据协议
二进制格式?文本格式?这个话题转到我的这篇文章,从我们当前的需求和产品周期上我觉得选择JSON形式的数据协议是最好的。
三.架构设计
首先我们来提炼一下一个IM系统的主要需求,包括账号,关系链,在线状态显示,消息交互......。
架构考量:
由于采用可靠传输协议TCP,考虑到负载问题(短连接实现账号、关系链相关业务,长连接实现上线、信息推送);
后台架构的灵活性、可扩展性,支持分布式部署&&把网络层、业务逻辑层、数据层分离,网络层和业务层支持负载均衡策略、数据层支持分布式存储;
客户端SDK的易用性:把网络层、数据层分离、业务逻辑层分离;
后台架构简化图
架构示意图
架构细化图
从& 架构细化图&中可以看出对于上线服务由于建立的是TCP长连接,对于单台服务器往往由于硬件资源、系统资源、网络资源的限制无法做到海量用户的同时 在线,所以设计为根据服务器负载支持多服务器上线,同时由于多服务器上线造成了对整个系统交互(不同的客户端的交互,协作部门应用服务和客户的交互)的分 割,引入消息转发服务器作为粘合点。另外对于多服务器上线造成的统一账户信息(在线状态,消息)数据的分割,引入统一的数据层(内存存储 层:session、状态信息存储、消息队列存储;数据库:账号信息存储)做到业务和数据的分离,也就做到了支持分布式部署。参见我的这篇文章
对于部分业务服务:做到网络层、业务层、数据层的完全分离。首先对于TCP短连接来说不会如长连接那般消耗资源,即使后期遇到海量的并发访问请求依然可以从容的通过负载均衡策略和数据分布式部署策略进行解决。参见我的这篇文章
服务端平台及技术选型
系统开发平台: CentOS&&Linux发行版的一种,稳定可靠、可定制优化、支持丰富;
网络支撑层: libevent&&减小开发成本,增强稳定性;
缓存存储层: Redis&&支持丰富的存储结构,支持分布式存储;
数据库: MySQL&&最适合互联网的数据库,免授权、高效稳定、可控性高;
开发语言: C/C++;
部分热点问题考量
系统性能考量:
编码角度:采用高效的网络模型,线程模型,I/O处理模型,合理的数据库设计和操作语句的优化;
垂直扩展:通过提高单服务器的硬件资源或者网络资源来提高性能;
水平扩展:通过合理的架构设计和运维方面的负载均衡策略将负载分担,有效提高性能;后期甚至可以考虑加入数据缓存层,突破IO瓶颈;
系统的高可用性:(防止单点故障)
在架构设计时做到业务处理和数据的分离,从而依赖分布式的部署使得在单点故障时能保证系统可用。
对于关键独立节点可以采用双机热备技术进行切换。
数据库数据的安全性可以通过磁盘阵列的冗余配置和主备数据库来解决。
主要学习资料: 请自行google。
《1.4亿在线背后的故事》;
《BasicDB的架构演变》;
《微信之道-至简》;
本文出自51博客 && ,转载请务必保留此出处
【编辑推荐】
【责任编辑: TEL:(010)】
关于&&的更多文章
全书共30章,分为四大篇:第一篇简单介绍了虚拟化技术的定义、分
讲师: 3人学习过讲师: 15人学习过讲师: 8人学习过
日-6日,GMIC 北京 2014全球移动互联网大会
OpenGL ES 和 OpenGL 一样,是 khronos 所维护、定义
一款《Flappy Bird》捧红了越南开发者阮哈东,引来无
本书共10章,介绍的内容包括恶意软件(包括病毒、木马和蠕虫等)的深度防御方法,黑客的主要类型和防御方法,企业网络内、外部网
Windows Phone专家
Android开发专家
51CTO旗下网站

我要回帖

更多关于 国家底线演员表 的文章

 

随机推荐