2009-09-11 42 views
6

Tôi đang triển khai hệ thống trò chuyện trong asp.net, giống như trò chuyện trên google và tôi sử dụng xmhttp để gửi và nhận dữ liệu và tôi đang sử dụng một bảng duy nhất để lưu trữ tất cả trò chuyện cho tất cả người dùng.Triển khai hệ thống trò chuyện: nơi lưu trữ dữ liệu trò chuyện?

tôi muốn tạo bảng tạm thời toàn cầu bằng sql bằng cách sử dụng XMLHttpRequest để sắp xếp dữ liệu tốt hơn (thay vì lưu trữ tất cả trò chuyện trong bảng sigle có thể (tôi không biết chắc chắn). Người dùng đang truy cập vào nó.)

cũng cho hệ thống của tôi, tôi không phải lưu trữ trò chuyện và vì vậy tôi nghĩ rằng bảng tạm thời toàn cầu sẽ tốt hơn vì nó sẽ bị xóa và tiết kiệm cho tôi sự cố khi xóa nó.

nhưng sau khi bảng đã được tạo ra bởi Xmlhttprequest nó được giảm ngay sau khi tạo ra nó .... tại sao điều này xảy ra tôi không biết .... tôi cũng đã loại bỏ tất cả các kết nối đường dây nhưng vẫn không có may mắn

vì vậy tôi nên làm gì ?? cũng nếu có ai biết về bất kỳ tài nguyên trực tuyến nào có thể chỉ cho tôi về các phương pháp hay nhất để làm theo, vui lòng cho tôi biết.

+0

Nếu bạn không phải lưu trữ cuộc trò chuyện, tại sao bạn lại đặt nó trong DB? Nếu bạn đang lo lắng về việc khóa nhìn vào snapshot isolation- http://msdn.microsoft.com/en-us/library/tcbchxcb.aspx – RichardOD

+0

Không thực hiện của riêng bạn - sử dụng IRC, Jabber hoặc bất cứ điều gì. – reinierpost

Trả lời

1

Bảng của bạn sẽ không có vấn đề về khóa với nhiều người dùng truy cập vào nó. Bảng tạm thời không có nghĩa là để được chia sẻ qua cuộc gọi, và bạn sẽ gió lên với roadblock hơn nhiều xuống con đường đó. Có lẽ tốt hơn là chỉ lưu trữ dữ liệu của bạn trong một bảng, sau đó thăm dò bảng.

Lần duy nhất bạn có thể có "sự cố khóa" là nếu người dùng đang cố viết cùng một đoạn dữ liệu vào cùng một hàng cùng một lúc ... điều này không nên xảy ra trong ứng dụng trò chuyện.

Ngoài ra, Google Trò chuyện sử dụng triển khai kiểu COMET thay vì triển khai bỏ phiếu. Đó là kinh nghiệm của tôi mà COMET> bỏ phiếu về mặt trải nghiệm người dùng.

+0

Vì vậy, tôi nên làm gì, cho tôi biết làm thế nào tôi có thể xử lý nó. – Abhishek

+0

xin lỗi tôi không biết về phong cách COMET vì vậy hãy cho tôi biết về nó. và cảm ơn trả lời tôi. – Abhishek

+0

http://en.wikipedia.org/wiki/Comet_%28programming%29 – RedFilter

0

Bạn không được phép lưu giữ bất kỳ tin nhắn trò chuyện nào trên cơ sở dữ liệu của mình ... trừ khi bạn đang triển khai các tin nhắn ngoại tuyến.

Các vấn đề liên quan