2015-04-28 43 views
1

我有一个合理的DB(SQL SERVER)网站。 我有一张表,其中有20个列有100,000个(不完全)记录。 在我的网站上,有一个页面可以查看表格(包含分页,排序和过滤),每次记录100条记录,所有字段均可编辑。 每秒钟都会进行更改,如何保持表格每个客户端的同步,包括排序,筛选,页码?提前致谢。跨所有Web用户同步数据

+0

您是否将编辑后的内容保存到数据库? –

+0

在你的后端写什么? –

+0

MVC4,是的,所有的更改都通过restful API保存 –

回答

0

您是否考虑使用WebSockets?它们是向浏览器客户端推送实时通知的绝佳方式。我没有使用过MVC4,但是我发现了这个链接,可能会让这个想法发光:http://blogs.msdn.com/b/youssefm/archive/2012/07/17/building-real-time-web-apps-with-asp-net-webapi-and-websockets.aspx

WebSockets帮助我在浏览器之间同步数据。

这个想法很简单。在服务器端,你将有一个处理器将数据广播到所有的客户端监听器。在客户端,您将向WebSocket处理程序发送新数据,届时WebSocket处理程序将向所有客户端广播该数据,并且您的表将同步。但请注意您的请求以及它们的发送方式。如果您在每个keyup事件中发送新的请求或不正确,您可以淹没您的服务器。但这是另一个问题。

这里是一个video教程我刚刚发现

希望这有助于你。

干杯!

+0

我有一个套接字库,但我不能让用户每秒刷新整个表格(正如我所说的,表格每秒更新一次) –

+0

您还没有刷新整个表格。只是被修改的行。您可以为每个单元格,列或行分配生成的UUID标识并分别进行更新。 –

+0

我不知道有多少用户或一次完成多少剪辑。我猜测用户只能同时在几个单元上工作。这样,您可以在更新表格时更新部分表格。这不是一个容易实现的逻辑,但我认为它可以通过WebSocket进行备份来完成这项工作。 –