Temps de réponse pour jBase - SQL/NoSQL - Programmation
Marsh Posté le 25-01-2007 à 10:36:07
A mon avis, c'est un mix des deux.
1 Go c'est pas énorme pour un serveurqui héberge deux bases de données, surtout si elles sont dans deux SGBD différents.
Cela dépends ensuite de la taille des bases, du nombre de sessions, etc.
Par contre, si SQL Server est rapide, et sur la même config, avec la même application, JBase est lent, il y a fort à parier qu'il s'agit aussi d'un problème de performances inhérent à JBase.
Je ne connais pas ce produit, je ne peux donc pas vraiment t'en dire plus.
Quelques pistes toutefois :
- Quel système de connection utilises-tu pour accéder à tes bases ? Dans l'ordre du plus performant au moins performant, on a : Connecteur natif / Connecteur .NET / Connecteur OLE DB / Connecteur ODBC / Connecteur JDBC
=> Donc si tu utilises un connecteur moins performant pour JBase, cela peut expliquer en partie des temps de réponse plus longs.
- Quelles optimisations ont été faites au niveau de la base ?
=> Vérifie que les index sont corrects dans JBase, que le fichier de la base n'est pas fragmenter, etc.
- Quel modèle de transactions est utilsé ?
=> Selon si ton application travaille avec des transactions et des connexions multiples, tu auras peut-être besoin d'ajuster le niveau de transactions. Par défaut, sous SQL Server, il est "simplifié". Peut-être que JBase travaille par défaut avec un modèle plus complexe.
Ensuite, il doit y avoir 1001 autres raisons possibles.
Dans tous les cas, je pense qu'un peu plus de RAM devrait améliorer la chose. Est-ce que ton serveur swap ? Si c'est le cas, ajoute au minimum suffisament de mémoire pour qu'il ne swap plus, c'est vital !
Marsh Posté le 25-01-2007 à 14:20:11
Merci MagicBuzz,
En faite j'ai deja pensé à augmenter mammemoire en 2Go.
Par contre pour le système de connection je ne sais pas les quels d'eux sont utilisé car en fait je ne suis pas vraiment expert mais d'apres toi comment pourrait-je verifier ce type de connection ? et en fait le serveur est swap et pour le type de transaction je n'ai aucune idée là dessus car j'utilise tout simplement le logiciel2.Et c'est pour cela que je me demande si ça vient du type de BDd en fait ce temps d'attente.
Marsh Posté le 25-01-2007 à 14:25:32
mise à part qu'il ne reposent pas sur la même base, Logiciel1 et Logiciel2 sont bien exactement la même application ?
La volumétrie des données est la même ?
(genre, c'est un peu les deux questions basiques que j'ai oublié de poser au départ )
Pour le reste, au vue de ta réponse, je dirais que... t'es pas du tout technique, et tu ne sembles de toute façon pas disposer de toutes les billes pour répondre aux question.
Notamment pour ce qui est du type de connection, à coup sûr c'est hardcodé dans le source, donc il faut avoir le code source de l'application. Pour ce qui est des transactions, avant de regarder au niveau du SGBD il faut connaître le fonctionnement interne de l'application (si les transactions sont activées complètement, mais que l'appli n'en fait rien, ça changera rien au schmilblik).
Enfin, j'ai l'impression qu'il y a un souci de définition de "swap" : Swap, c'est la mémoire virtuelle.
En gros, est-ce que quand tu te sert de l'application, le disque dur passe son temps à crépiter ou non ? Si oui alors il y a de grandes chances pour que ça swap, donc ajouter de la mémoire est impératif. Si c'est pas le cas à priori ça swap pas et le manque de mémoire n'est pas spécialement la piste à privilégier.
Marsh Posté le 26-01-2007 à 14:17:16
Slt, la taille de jBase est actuellement environ 300Mo par contra du cote de sql 100Mo,à propos de swap la taille initial est 1536 et la taille max est 3072 je ne sais pas s'il faut ce config manuel ou laisser gerer par le system.
En fait le disque dur passe son temps à crépiter lors de l'application.
Mais mon soucie est là dessus au niveau du swap est ce suffisant ce config?
Marsh Posté le 26-01-2007 à 14:26:21
il faut normalement swap = RAM * 1.5 à 2.5 (* 2 c'est très bien).
que ta swap fasse 1 Mo ou 500 To ça changera rien au problème de performances.
la swap, un serveur NE DOIS JAMAIS AVOIR A S'EN SERVIR pour travailler.
la swap sur un serveur ne doit servir qu'à deux choses :
- stocker les process inutilisés afin de décharger la RAM
- pallier à un manque de RAM lors de certaines tâches exceptionnelles particulièrement lourdes
pour l'exploitation, le serveur ne doit JAMAIS utiliser la SWAP.
si le HD crépite comme un malade dès que tu te sers de l'appli, c'est qu'il SWAP à mort. passe donc immédiatement à 2 Go avant d'aller plus loin.
si ton serveur le permet, vu le prix de la RAM, tu peux carrément y aller pour 4 Go et être certain d'être tranquille une bonne fois pour toute.
Marsh Posté le 25-01-2007 à 08:34:19
Slt à tous, en fait je sais pas si je suis dans le bon endroit.
Alors j'ai un serveur Dell PIV 2.8Ghz et mem 1Go.
Alors j'ai 2 types de BDD dans mon serveur Sql serv et jBase et 2 different logiciel.
Lorsque je lance l'application avec logiciel1 qui utilise sql serv,il n'y a pas de temps de réponse l'application est bonne .
Lorsque je lance l'application avec logiciel2 qui utilise jBase,il a plus de temps de réponse .
Et ma question est ce que c'est à cause du config de mon serveur(peu de memoire) que le logiciel 2 met du temps à repondre ou c'est à cause de jBase?
Merci pour toute réponse ou suggestion .