2011-03-07 5 views
0

저는 웹 앱에 익숙하지 않으므로 이것은 매우 어리석은 질문 일 수 있습니다. 기본적으로 데이터베이스와 동기화되는 웹 앱을 원하고 데이터베이스와 동기화되는 데이터를 보낼 수 있어야합니다.연결/연결 해제 할 수있는 웹 앱?

제 질문은 가동 중지 시간에 관한 것입니다. 웹 응용 프로그램의 인터넷 연결이 끊어지면 입력 된 정보를 네트워크에 다시 연결하고 데이터베이스에 동기화 할 때까지 정보를 저장하는 방법이 있습니까?

도움 주셔서 감사합니다.

+0

이것은 많이 의존합니다. 클라이언트 측 페이지가 열려있는 동안 서버와의 ajax 대화를 다시 열 수있을 때까지 모든 데이터를 유지할 수 있습니다. 그러나 사용자가 페이지를 닫으면 옵션이 더 제한적이게됩니다. 내가 생각할 수있는 모든 것의 상단에서 쿠키가 나오고 그 쿠키는 단지 4096 바이트입니다. 아마도 기본 서버에 다시 액세스 할 수있을 때까지 데이터를 저장할 수있는 백업 서버를 고려해보십시오. – dartacus

+0

그냥 실현 - 당신은 웹 애플 리케이션에 대해 이야기하기 시작하지만 모바일 애플 리케이션에 대해 이야기를 마무리. 당신은 완전히 본격적인 안드로이드/아이폰/블랙 베리/기타 애플 리케이션을 설계한다면, 클라이언트 쪽 데이터 스토리지 옵션이 분명 훨씬 낫다 : sqlite dbs 등 웹 애플 리케이션을 위해 당신이 이런 식으로 사용할 수있을 것이라고 생각 : http : //blogs.sitepoint.com/2005/10/21/store-large-data-client-side-with-amass/ (비록 나에게 조금이라도 보이지만) – dartacus

+0

미안하지만 실수 였어. 모바일 앱을 말하는 것입니다. 그래서 페이지가 열려 있고 정보가 괜찮 으면 입력됩니까? 나는 그것이 내가 희망 할 수있는 최선이라고 생각한다. – tweetypi

답변

1

이상적으로 HTML5 로컬 저장소를 사용하여 http fifo 대기열을 작성하려고합니다. 대부분의 상황에서 매우 과잉이지만 직장에서는 iOS, WP7, Android 및 Javascript를위한 고유 클라이언트 라이브러리가 있으며 영구 대기열 및 안정적인 전달 기능을 제공하므로 어떤 이유에서든 서버 연결을 중단해야합니다.

가져 오기/받기 - 메모리 대기열에 저장 -> 저장소에 저장 -> 보내기 -> 저장소에서 제거 -> "보낸"콜백을 발생시킵니다.

메시지를 보내지 못하면 저장소에두고 메모리에 다시 큐합니다.

메시지가 추가/제거 될 때마다 큐를 시작하는 것처럼 몇 초마다 큐를 움직이는 타이머 이벤트가 있습니다. 최대 동시 연결 수를 제한합니다 (클라이언트 당 Http가 2 여야 함).

그런 다음 웹 응용 프로그램이로드 될 때마다 로컬 저장소의 모든 항목을 인 메모리 대기열로 다시 읽어보십시오.

다음은 지속적/안정적 대기열을 갖고 있으며 메시지를 잃지 않습니다.

+0

아, 이건 iOS, WP7, 안드로이드와 실제로 작동하니? WP7은 아직 HTML5를 지원하지 않는다고 생각합니다. – tweetypi

+0

각 플랫폼에 고유합니다. 따라서 WP7은 .Net, iOS Objective C 등이며 Webapp는 Javascript/HTML5입니다. 모두 똑같은 것을 달성하고 동일한 API를 노출합니다. 개발자에게. – Tyler

관련 문제