2011-07-11 5 views
1

Nous utilisons actuellement SimpleDB d'Amazon pour un service web. Les données sont très simples et ne nécessitent pas de SQL. C'est fondamentalement un «sac de propriété».Like-for-Like SimpleDB Offline

Nous devons faire une démonstration de notre projet quelque part où nous n'aurons pas forcément accès à Internet et qui ne pourront peut-être pas accéder à SimpleDB. Cela vient tout juste de se manifester et on m'a demandé de rechercher un service que nous pourrions utiliser sur un serveur local qui nous fournirait un service à la demande (ie les appels à SimpleDB fonctionneraient de la même manière sur ce service) afin que nous puissions pourrait simplement diriger notre code vers ceci plutôt que le vrai service AWS SimpleDB sans n'importe quel changement de code.

Est-ce que quelqu'un d'autre fait quelque chose de similaire? Qu'est-ce que vous utilisez? Nous utilisons également Azure. Par conséquent, plutôt que de modifier notre application pour qu'elle fonctionne avec un service en ligne et une autre en mode hors connexion, nous pouvons la modifier pour utiliser uniquement Azure car elle peut fonctionner hors connexion et fonctionner.

Répondre

0

En tant que référence pour toute personne qui finit par regarder ici pour le même ...

Nous avons finalement utilisé mdb/Node.js qui utilise les mêmes appels que api SimpleDB. Tout ce que nous avions à faire était de pointer notre application vers une nouvelle URL de point de terminaison de service (notre serveur MDB Node.js - qui était une application VMware que nous avons utilisée dans VMware Player).

Cela a fonctionné parfaitement, mais heureusement nous n'en avons jamais vraiment eu besoin car nous pouvions accéder au vrai SimpleDB.

https://github.com/robtweed/node-mdb

http://gradvs1.mgateway.com/main/index.html?path=mdb

Neil

5

Le stockage de la table Windows Azure ne fonctionne pas réellement hors connexion en tant que tel. L'émulateur de stockage peut être exécuté sans connexion interne. Cependant, c'est un émulateur. Ainsi, il n'a pas 100% de fidélité avec le service de nuage et il n'est pas accordé pour n'importe quel type de comparaison de performance. Vous pouvez l'utiliser pour les démos, mais je ne suggérerais pas d'utiliser l'émulateur pour tout type de travail «réel». Chose folle sur les services cloud ... ils ne fonctionnent pas très bien hors ligne. ;)

0

Vous pourriez peut-être utiliser une version locale de Redis - http://redis.io/ - mais cela aurait certainement besoin d'un peu recodage - appels pas comme COMPARABLES

0

Si la demande a été écrit pour être testables (ce qui signifie que vous êtes en utilisant quelque chose comme le modèle de dépôt) vous pourriez peut-être boucher les appels et pointer vers un Db très léger ou un fichier.