Puis-je affirmer que les applications rail/sinatra sont initialisées une seule fois et que toutes les demandes partagent la même application instance? ou est-ce que de nouvelles requêtes engendrent de nouvelles instances d'applications?Sinatra/Rails: Persistance des instances de classe personnalisées pendant la durée de vie de l'application
Est-il possible d'utiliser des classes personnalisées et de les conserver pendant la durée de vie de l'application sans utiliser de sessions, de stockages de bases de données ou de services tiers? Si oui, quelles sont les implications du point de vue de la sécurité des threads? J'essaie de comprendre comment implémenter un gestionnaire de téléchargement basé sur le Web et j'évalue actuellement les frameworks basés sur Ruby.
C'est une information assez choquante sur Sinatra. Je cherche partout pour savoir comment obtenir que Sinatra n'ouvre pas une nouvelle connexion db à chaque demande. Est-ce que Sinatra est dans le mauvais sens? – mjnissim
Pourquoi est-ce choquant? Rails crée également une nouvelle instance de contrôleur pour chaque requête. Il ne suffit pas de stocker une connexion DB en tant que variable d'instance. Vous pouvez faire 'set: db, DB.connect (...)' et ensuite l'accéder comme 'settings.db' de la route, par exemple. –