在第四个数据库的三层体系结构中, scaling horizontally scaling vertically和scaling vertically是什么意思?
[! ]问题仍然是开放的 问题: WebRTC为我们提供点对点video/audio连接。 这是完美的P2P呼叫,环聊。 但是广播(一对多,例如1比10000)呢? 假设我们有一个广播员“B”和两个与会者“A1”,“A2”。 当然,这似乎是可以解决的:我们只需要将B与A1连接,然后将B与A2连接。 所以B将video/audiostream直接发送到A1,将另一个stream发送到A2。 B发送stream两次。 现在让我们想象一下有10000个与会者:A1,A2,…,A10000。 这意味着B必须发送10000个stream。 每个stream〜40KB / s,这意味着B需要400MB / s的传出网速来维持这个广播。 不能接受的。 原始问题(已过时) 是否有可能以某种方式解决这个问题,所以B只发送一个stream在一些服务器上,与会者只是从这个服务器拉这个stream? 是的,这意味着在这个服务器上的传出速度必须很高,但我可以维护它。 或者,也许这意味着破坏WebRTC的想法? [! ]最新的问题 解决CPU /带宽 – 是否有无服务器解决scheme(又名组播或类似的东西)? 解决CPU – 是否有可能只编码一次stream并发送给同行? 解决CPU /带宽 – 多播是绝对有可能的,但它实际上在实际工作(延迟,networking不稳定)? 笔记 对于最终用户而言,由于糟糕的用户体验,Flash无法满足我的需求。 解 26.05.2015 – 目前还没有针对WebRTC的可扩展广播的解决scheme,根本不使用媒体服务器。 在市场上有服务器端解决scheme以及混合(p2p +服务器端,取决于不同的条件)。 有一些有前途的技术,虽然像https://github.com/muaz-khan/WebRTC-Scalable-Broadcast但他们需要回答这些可能的问题:延迟,整体networking连接稳定性,可扩展性公式(他们不是无限的 – 可扩展的)。
我所阅读和经历的一切(基于Tornado的应用程序)使我相信,ePoll是Select和Pollnetworking的自然替代品,特别是Twisted。 这使我偏执,这是一个更好的技术或方法,而不是一个价格。 阅读epoll和替代品之间的几十个比较表明,epoll显然是速度和可伸缩性的冠军,特别是它以线性的方式缩放,这是非常棒的。 那么说,处理器和内存使用率呢,epoll还是冠军?
你知道如何deviseSQL解决scheme的好资源吗? 除了基本的语言语法,我正在寻找一些东西来帮助我理解: build立什么表格以及如何链接它们 如何devise不同的规模(小客户端APP到庞大的分布式网站) 如何编写有效/高效/优雅的SQL查询
我正处于编写一个新的Windows服务应用程序的devise阶段,该应用程序接受长时间连接的TCP / IP连接(即,这不像HTTP那里有很多短连接,而是客户端连接并保持连接数小时或数天甚至几周)。 我正在寻找想法来devisenetworking架构的最佳方式。 我将需要启动至less一个线程的服务。 我正在考虑使用asynchronousAPI(BeginRecieve等..),因为我不知道有多less客户端,我将连接在任何时候(可能是数百)。 我绝对不想为每个连接启动一个线程。 数据将主要从我的服务器stream出到客户端,但是偶尔会有一些来自客户端的命令。 这主要是一个监视应用程序,在这个应用程序中,我的服务器定期向客户端发送状态数据。 任何build议最好的方式使这个尽可能的可扩展性? 基本工作stream程 谢谢。 编辑:要清楚,我正在寻找基于.net的解决scheme(C#如果可能,但任何.net语言将工作) BOUNTY NOTE:为了获得赏金,我期待的不仅仅是一个简单的答案。 我需要一个解决scheme的工作示例,作为我可以下载的一个指针或一个简单的例子。 它必须是基于.net和Windows的(任何.net语言都可以) 编辑:我想感谢每个人给出了很好的答案。 不幸的是,我只能接受一个,而我select接受更为人熟知的Begin / End方法。 埃萨克的解决scheme可能会更好,但是这个问题还是很新的,我不知道如何解决问题。 我已经提出了所有我认为很好的答案,希望我能为你们做更多的事情。 再次感谢。