Salut,
Je voudrais créer une “couche” entre le client et la BD afin de pouvoir la modifiée sans avoir à modifier les clients. Cette couche(serveur) contiendrais, entre autre, les fonctions d’accès à la BD.
CLIENT < -- > SERVEUR < -- > BD
Le serveur ne devient-il pas comme un “goulot d’étranglement” (bottle-neck) ?
Exemple de fct)
Le problème est que les fonctions doivent être synchronisées(…je crois), car elles penvent être appellées par plusieurs clients au même moment. Mais si les toutes les fcts sont “synchronized”, si je ne me trompe pas, une seule d’entre elles peut être appellée à la fois? Donc, le “serveur” devient très inefficace étant donné qu’il traite les appels séquentiellement et non de manière concurrente.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public SYNCHRONIZED ResultSet getVendeur(int idVendeur){ try{ Statement stm = maConnection.createStatement(); String query = "SELECT * FROM vendeurs WHERE id= + idVendeur; ResultSet rset = stm.executeQuery(query); return rset; } catch (SQLException ex){ ex.printStackTrace(); return null; } }
Est-ce que je me trompe? Y a t’il une façon de rendre le serveur plus efficace?
Merci.
Partager