{"id":6508,"date":"2015-02-12T04:46:34","date_gmt":"2015-02-12T04:46:34","guid":{"rendered":"https:\/\/dev.railscarma.com\/scaling-applications-multiple-database-connection\/"},"modified":"2022-08-30T15:39:46","modified_gmt":"2022-08-30T15:39:46","slug":"mise-a-lechelle-des-applications-connexion-a-plusieurs-bases-de-donnees","status":"publish","type":"post","link":"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/mise-a-lechelle-des-applications-connexion-a-plusieurs-bases-de-donnees\/","title":{"rendered":"Mise \u00e0 l&#039;\u00e9chelle des applications avec plusieurs connexions \u00e0 des bases de donn\u00e9es"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"6508\" class=\"elementor elementor-6508\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1b1765f1 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1b1765f1\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-51764bfd\" data-id=\"51764bfd\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-629313b0 elementor-widget elementor-widget-text-editor\" data-id=\"629313b0\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p>Les exigences commerciales ne cessent de changer de jour en jour et nous continuons toujours \u00e0 optimiser ou \u00e0 faire \u00e9voluer nos applications en fonction de l&#039;utilisation, des ajouts ou des soustractions de nouvelles fonctionnalit\u00e9s. Dans l\u2019ensemble, le d\u00e9veloppement agile ajoute de temps en temps des d\u00e9fis.<\/p>\n\n\n\n<p>Les applications d\u00e9pendant de bases de donn\u00e9es peuvent \u00eatre mises \u00e0 l&#039;\u00e9chelle en s\u00e9parant la couche de base de donn\u00e9es et en la mettant \u00e0 l&#039;\u00e9chelle ind\u00e9pendamment. L&#039;\u00e9quipe OPS s&#039;occupe de ces changements d&#039;infrastructure en fonction de l&#039;architecture de d\u00e9ploiement des applications.<\/p>\n\n\n\n<p>En tant que programmeur, nous pouvons configurer notre application pour qu&#039;elle fonctionne avec plusieurs bases de donn\u00e9es. Dans ce document, nous allons expliquer comment y parvenir dans une application Rails.<\/p>\n\n\n\n<p>Il existe 3 mani\u00e8res diff\u00e9rentes de connecter une base de donn\u00e9es suppl\u00e9mentaire \u00e0 une application<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Configurer la base de donn\u00e9es.yml<\/li><li>Connexion directe<\/li><li>Ecrire dans le module<\/li><\/ol>\n\n\n\n<p class=\"Standard\"><b><span style=\"color: black;\">1. Configurez database.yml\u00a0:<\/span><\/b><\/p>\n\n\n\n<p class=\"Standard\"><span style=\"color: black;\">Comme nous le savons, database.yml aura 3 connexions \u00e0 la base de donn\u00e9es par d\u00e9faut pour le d\u00e9veloppement, les tests et la production. Nous pouvons connecter une autre base de donn\u00e9es aux trois environnements en ajoutant le code ci-dessous.<\/span><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><em>autre_d\u00e9veloppement\u00a0:<\/em><br><code><br>\n<em>&nbsp; adaptateur\u00a0: nom_adaptateur (mysql2, postgresql, oracle, Mssql, etc.)<\/em><\/code><\/p><p><em>&nbsp; base de donn\u00e9es\u00a0: nom_base_de_d\u00e9veloppement<\/em><\/p><p><em>&nbsp; nom_utilisateur\u00a0: nom_utilisateur<\/em><\/p><p><em>&nbsp; mot de passe: ******<\/em><\/p><p><em>autre_test\u00a0:<\/em><\/p><p><em>&nbsp; adaptateur\u00a0: nom_adaptateur (mysql2, postgresql, oracle, Mssql, etc.)<\/em><\/p><p><em>&nbsp; base de donn\u00e9es\u00a0: nom_base_de_donn\u00e9es_test<\/em><\/p><p><em>&nbsp; nom_utilisateur\u00a0: nom_utilisateur<\/em><\/p><p><em>&nbsp; mot de passe: ******<\/em><\/p><p><em>autre_production\u00a0:<\/em><\/p><p><em>&nbsp; adaptateur\u00a0: nom_adaptateur (mysql2, postgresql, oracle, Mssql, etc.)<\/em><\/p><p><em>&nbsp; base de donn\u00e9es\u00a0: nom_base_de_donn\u00e9es_production<\/em><\/p><p><em>&nbsp; nom_utilisateur\u00a0: nom_utilisateur<\/em><\/p><p><em>&nbsp; mot de passe: ******<\/em><\/p><\/blockquote>\n\n\n\n<p>Apr\u00e8s avoir configur\u00e9 database.yml, nous pouvons le connecter de 2 mani\u00e8res en fonction des cas ci-dessous<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Structure de base de donn\u00e9es connue<\/li><li>Structure de base de donn\u00e9es inconnue<\/li><\/ul>\n\n\n\n<p><strong>Structure de base de donn\u00e9es connue\u00a0:<\/strong><\/p>\n\n\n\n<p>Si nous connaissons la structure de la base de donn\u00e9es, nous pouvons cr\u00e9er des mod\u00e8les pour chacun et \u00e9tablir la connexion dans le mod\u00e8le.<\/p>\n\n\n\n<p><strong>Exemple:<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><code><em>classe AutreTable &lt; ActiveRecord :: Base<\/em><\/code><\/p><p><em>&nbsp; self.abstract_class = vrai<\/em><\/p><p><em>&nbsp; \u00e9tablir_connexion &quot;other_#{Rails.env}&quot;<\/em><\/p><p><em>fin<\/em><\/p><\/blockquote>\n\n\n\n<p>Cela peut \u00e9galement \u00eatre h\u00e9rit\u00e9 par un autre mod\u00e8le<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><code><em>classe Astronaute &lt;AutreTable<\/em><\/code><\/p><p><em>&nbsp; has_many\u00a0:\u00a0missions<\/em><\/p><p><em>&nbsp; has_many\u00a0:\u00a0navettes, via\u00a0:\u00a0missions<\/em><\/p><p><em>fin<\/em><\/p><\/blockquote>\n\n\n\n<p><strong>Structure de base de donn\u00e9es inconnue<\/strong>:<\/p>\n\n\n\n<p>Lorsque nous ne connaissons pas la structure de la base de donn\u00e9es, nous ne pouvons \u00e9crire qu&#039;un seul mod\u00e8le et nous pouvons y \u00e9tablir la connexion. Nous pouvons faire le brut en fonction des param\u00e8tres dynamiques.<\/p>\n\n\n\n<p><strong>Exemple:<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><code><em>classe ExternalDatabaseConnection &lt; ActiveRecord :: Base<\/em><\/code><\/p><p><em>&nbsp; self.abstract_class = true # cette classe n&#039;a pas de table<\/em><\/p><p><em>&nbsp; \u00e9tablir_connexion(:<\/em>nom de la base de donn\u00e9es<em>)<\/em><\/p><p><em>fin<\/em><\/p><\/blockquote>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\"><li><strong> Connexion directe:<\/strong><\/li><\/ol>\n\n\n\n<p>Dans le cas o\u00f9 la 2\u00e8me base de donn\u00e9es n&#039;a pas beaucoup d&#039;importance et est utilis\u00e9e \u00e0 un ou deux endroits, nous pouvons directement appeler la<\/p>\n\n\n\n<p>ActiveRecord :: Base.establish_connection avec les informations d&#039;identification et nous pouvons interagir avec cette base de donn\u00e9es.<\/p>\n\n\n\n<p><strong>Exemple:<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><code><br>\n<em>ActiveRecord::Base.establish_connection(:adapter<\/em><em>er=&gt;&quot;nom_adaptateur&quot;,:host=&gt;&quot;localhost&quot;,<\/em><\/code><\/p><p><code><em>:nom d&#039;utilisateur<\/em> <em>=&gt;&quot;nom_utilisateur&quot;,:mot de passe =&gt; &quot;*********&quot;,:base de donn\u00e9es =&gt; &quot;nom_base de donn\u00e9es&quot;)<\/em><br>\n<\/code><\/p><\/blockquote>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\"><li><strong> Ecriture dans le module\u00a0:<\/strong><\/li><\/ol>\n\n\n\n<p>Nous pouvons \u00e9galement connecter la base de donn\u00e9es du module et l&#039;inclure dans le mod\u00e8le comme indiqu\u00e9 ci-dessous.<\/p>\n\n\n\n<p><strong>Exemple:<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><code><em>module SecondDatabaseMixin<\/em><\/code><\/p><p><em>&nbsp; \u00e9tendre ActiveSupport :: Concern<\/em><\/p><p><em>&nbsp; inclus { establishment_connection &quot;other_#{Rails.env}&quot; }<\/em><\/p><p><em>fin<\/em><\/p><\/blockquote>\n\n\n\n<p><strong>Connexion \u00e0 une base de donn\u00e9es externe\u00a0:<\/strong><\/p>\n\n\n\n<p>La base de donn\u00e9es \u00e0 connecter peut exister sur n&#039;importe quel serveur. Dans le cas o\u00f9 ce n&#039;est pas sur le m\u00eame serveur, nous pouvons donner \u00e0 l&#039;h\u00f4te l&#039;adresse IP du serveur o\u00f9 il existe.<\/p>\n\n\n\n<p><strong>Exemple:<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><code><em>adaptateur\u00a0: nom_adaptateur (mysql2, postgresql, oracle, Mssql, etc.)<\/em><\/code><\/p><p><em>&nbsp; h\u00f4te\u00a0: external_db_server_ip (192.168.1.1)<\/em><\/p><p><em>&nbsp; nom d&#039;utilisateur\u00a0: nom_utilisateur<\/em><\/p><p><em>&nbsp; mot de passe: *******<\/em><\/p><p><em>&nbsp; base de donn\u00e9es\u00a0: nom_base de donn\u00e9es<\/em><\/p><\/blockquote>\n\n\n\n<p><strong><em>Note: <\/em><\/strong><em>Il existe peu de joyaux disponibles pour <\/em><em>&nbsp;magic_multi_connections, Db-charme etc.,.<\/em><\/p>\n\n\n\n<p><span style=\"text-decoration: underline;\"><strong>Avantages et inconv\u00e9nients :<\/strong><\/span><\/p>\n\n\n\n<p><strong>&nbsp;<\/strong><strong>Avantages<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Si l&#039;application a plusieurs clients et que chacun souhaite une base de donn\u00e9es diff\u00e9rente pour ses clients.<\/li><li>Aide aux sauvegardes pour chaque client.<\/li><li>Une autre base de donn\u00e9es peut \u00eatre utilis\u00e9e dans une autre application qui peut avoir un adaptateur diff\u00e9rent.<\/li><li>Lorsque les utilisateurs signalent que l&#039;acc\u00e8s est lent, il est facile de savoir quelle base de donn\u00e9es est \u00e0 l&#039;origine du probl\u00e8me.<\/li><\/ul>\n\n\n\n<p><strong>Les inconv\u00e9nients<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Si l&#039;application est simple avec moins d&#039;utilisateurs<\/li><li>Maintenance du code pour le reste en cas de modification de la structure de la base de donn\u00e9es.<\/li><\/ul>\n\n\n\n<p><em>En savoir plus :&nbsp;<\/em><\/p>\n\n\n\n<h5 class=\"entry-title wp-block-heading\"><a href=\"\/fr\/blog\/articles-techniques\/un-moyen-simple-daugmenter-les-performances-de-votre-application-rails-2\/\" target=\"_blank\" rel=\"noreferrer noopener\">Un moyen simple d&#039;augmenter les performances de votre application Rails<\/a><\/h5>\n\n\n\n<p><a href=\"\/fr\/blog\/rails-3\/api-rails-dintroduction\/\" target=\"_blank\" rel=\"noreferrer noopener\">Une introduction \u00e0 l&#039;API Rails<\/a><\/p>\n\n\n\n<p><a href=\"\/fr\/blog\/articles-techniques\/manipulation-dimages\/\" target=\"_blank\" rel=\"noreferrer noopener\">Manipulation d&#039;images<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/5-meilleurs-systemes-de-gestion-de-contenu-ruby-on-rails-cms\/\" target=\"_blank\" rel=\"noreferrer noopener\">Associations polymorphes avec enregistrement actif<\/a><\/p>\n\n\n\n<p><a href=\"\/fr\/contactez-nous\/\">\u00a0Prenez contact avec nous.<\/a><\/p>\n\n\n\n<p><strong>Manasa Heggere <\/strong><\/p>\n\n\n\n<p>D\u00e9veloppeur senior Ruby on Rails<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1b04c62f elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1b04c62f\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d3d3aef\" data-id=\"d3d3aef\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-29b7831d elementor-widget elementor-widget-heading\" data-id=\"29b7831d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Abonnez-vous pour les derni\u00e8res mises \u00e0 jour<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-17b56ca2 elementor-widget elementor-widget-shortcode\" data-id=\"17b56ca2\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t\t\t\t\t<script type=\"text\/javascript\">\n\t\t\t\t\t\tvar gCaptchaSibWidget;\n                        var onloadSibCallbackInvisible = function () {\n\n                            var element = document.getElementsByClassName('sib-default-btn');\n                            var countInvisible = 0;\n                            var indexArray = [];\n                            jQuery('.sib-default-btn').each(function (index, el) {\n                                if ((jQuery(el).attr('id') == \"invisible\")) {\n                                    indexArray[countInvisible] = index;\n                                    countInvisible++\n                                }\n                            });\n\n                            jQuery('.invi-recaptcha').each(function (index, el) {\n                                grecaptcha.render(element[indexArray[index]], {\n                                    'sitekey': jQuery(el).attr('data-sitekey'),\n                                    'callback': sibVerifyCallback,\n                                });\n                            });\n                        };\n\t\t\t\t\t<\/script>\n\t\t\t\t\t                <script src=\"https:\/\/www.google.com\/recaptcha\/api.js?onload=onloadSibCallbackInvisible&render=explicit\" async defer><\/script>\n\t\t\t\t\n\t\t\t<form id=\"sib_signup_form_1\" method=\"post\" class=\"sib_signup_form\" action=\"\">\n\t\t\t\t<div class=\"sib_loader\" style=\"display:none;\"><img\n\t\t\t\t\t\t\tsrc=\"https:\/\/www.railscarma.com\/wp-includes\/images\/spinner.gif\" alt=\"chargeur\"><\/div>\n\t\t\t\t<input type=\"hidden\" name=\"sib_form_action\" value=\"subscribe_form_submit\">\n\t\t\t\t<input type=\"hidden\" name=\"sib_form_id\" value=\"1\">\n                <input type=\"hidden\" name=\"sib_form_alert_notice\" value=\"Please fill out this field\">\n                <input type=\"hidden\" name=\"sib_form_invalid_email_notice\" value=\"Your email address is invalid\">\n                <input type=\"hidden\" name=\"sib_security\" value=\"d7f7626ab9\">\n\t\t\t\t<div class=\"sib_signup_box_inside_1\">\n\t\t\t\t\t<div style=\"\/*display:none*\/\" class=\"sib_msg_disp\">\n\t\t\t\t\t<\/div>\n                                            <div id=\"sib_captcha_invisible\" class=\"invi-recaptcha\" data-sitekey=\"6LdikOAaAAAAAJ6SWrrKVQrtw7TQpQAEnv0HS0G3\"><\/div>\n                    \t\t\t\t\t<p class=\"sib-email-area\">\r\n    <label class=\"sib-email-area\"><\/label>\r\n    <input type=\"email\" class=\"sib-email-area\" name=\"email\" required=\"required\" placeholder=\"Adresse e-mail\">\r\n<\/p>\r\n<p class=\"sib-NAME-area\">\r\n    <label class=\"sib-NAME-area\"><\/label>\r\n    <input type=\"text\" class=\"sib-NAME-area\" name=\"NAME\" placeholder=\"Nom\">\r\n<\/p>\r\n<p>\r\n    <input type=\"submit\" id=\"invisible\" class=\"sib-default-btn\" value=\"S&#039;abonner\">\r\n<\/p>\t\t\t\t<\/div>\n\t\t\t<input type=\"hidden\" name=\"trp-form-language\" value=\"fr\"\/><\/form>\n\t\t\t<style>\n\t\t\t\tform#sib_signup_form_1 p.sib-alert-message {\n    padding: 6px 12px;\n    margin-bottom: 20px;\n    border: 1px solid transparent;\n    border-radius: 4px;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    box-sizing: border-box;\n}\nform#sib_signup_form_1 p.sib-alert-message-error {\n    background-color: #f2dede;\n    border-color: #ebccd1;\n    color: #a94442;\n}\nform#sib_signup_form_1 p.sib-alert-message-success {\n    background-color: #dff0d8;\n    border-color: #d6e9c6;\n    color: #3c763d;\n}\nform#sib_signup_form_1 p.sib-alert-message-warning {\n    background-color: #fcf8e3;\n    border-color: #faebcc;\n    color: #8a6d3b;\n}\n\t\t\t<\/style>\n\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t  <div class=\"related-post slider\">\r\n        <div class=\"headline\">Articles Similaires<\/div>\r\n    <div class=\"post-list owl-carousel\">\r\n\r\n            <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Gemme de Kaminari\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/joyau-kaminari\/?related_post_from=37277\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"joyau kaminari\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Gemme de Kaminari\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/joyau-kaminari\/?related_post_from=37277\">\r\n        Gemme de Kaminari  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Pourquoi engager des d\u00e9veloppeurs Ruby on Rails en 2026 ?\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/ror\/pourquoi-embaucher-des-developpeurs-ruby-on-rails\/?related_post_from=30627\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"pourquoi embaucher des d\u00e9veloppeurs Ruby on Rails en 2022\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Pourquoi engager des d\u00e9veloppeurs Ruby on Rails en 2026 ?\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/ror\/pourquoi-embaucher-des-developpeurs-ruby-on-rails\/?related_post_from=30627\">\r\n        Pourquoi engager des d\u00e9veloppeurs Ruby on Rails en 2026 ?  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Importance de l&#039;architecture logicielle dans le d\u00e9veloppement de logiciels d&#039;entreprise\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/ror\/importance-de-larchitecture-logicielle-dans-le-developpement-de-logiciels-dentreprise\/?related_post_from=36250\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"Importance de l&#039;architecture logicielle dans le d\u00e9veloppement de logiciels d&#039;entreprise\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Importance de l&#039;architecture logicielle dans le d\u00e9veloppement de logiciels d&#039;entreprise\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/ror\/importance-de-larchitecture-logicielle-dans-le-developpement-de-logiciels-dentreprise\/?related_post_from=36250\">\r\n        Importance de l&#039;architecture logicielle dans le d\u00e9veloppement de logiciels d&#039;entreprise  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Ruby IDE\u00a0: les meilleurs IDE pour le d\u00e9veloppement Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/ror\/ruby-ide-les-meilleures-idees-pour-le-developpement-de-ruby-on-rails\/?related_post_from=36125\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"MEILLEURES ID\u00c9ES POUR LE D\u00c9VELOPPEMENT DE RUBY ON RAILS\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Ruby IDE\u00a0: les meilleurs IDE pour le d\u00e9veloppement Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/ror\/ruby-ide-les-meilleures-idees-pour-le-developpement-de-ruby-on-rails\/?related_post_from=36125\">\r\n        Ruby IDE\u00a0: les meilleurs IDE pour le d\u00e9veloppement Ruby on Rails  <\/a>\r\n\r\n        <\/div>\r\n      \r\n  <\/div>\r\n\r\n  <script>\r\n      <\/script>\r\n  <style>\r\n    .related-post {}\r\n\r\n    .related-post .post-list {\r\n      text-align: left;\r\n          }\r\n\r\n    .related-post .post-list .item {\r\n      margin: 10px;\r\n      padding: 10px;\r\n          }\r\n\r\n    .related-post .headline {\r\n      font-size: 14px !important;\r\n      color: #999999 !important;\r\n          }\r\n\r\n    .related-post .post-list .item .post_thumb {\r\n      max-height: 220px;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n          }\r\n\r\n    .related-post .post-list .item .post_title {\r\n      font-size: 14px;\r\n      color: #000000;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .post-list .item .post_excerpt {\r\n      font-size: 12px;\r\n      color: #3f3f3f;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .owl-dots .owl-dot {\r\n          }\r\n\r\n      <\/style>\r\n      <script>\r\n      jQuery(document).ready(function($) {\r\n        $(\".related-post .post-list\").owlCarousel({\r\n          items: 2,\r\n          responsiveClass: true,\r\n          responsive: {\r\n            0: {\r\n              items: 1,\r\n            },\r\n            768: {\r\n              items: 2,\r\n            },\r\n            1200: {\r\n              items: 2,\r\n            }\r\n          },\r\n                      rewind: true,\r\n                                loop: true,\r\n                                center: false,\r\n                                autoplay: true,\r\n            autoplayHoverPause: true,\r\n                                nav: true,\r\n            navSpeed: 1000,\r\n            navText: ['<i class=\"fas fa-chevron-left\"><\/i>', '<i class=\"fas fa-chevron-right\"><\/i>'],\r\n                                dots: false,\r\n            dotsSpeed: 1200,\r\n                                                    rtl: false,\r\n          \r\n        });\r\n      });\r\n    <\/script>\r\n  <\/div>","protected":false},"excerpt":{"rendered":"<p>Les besoins de l'entreprise \u00e9voluent jour apr\u00e8s jour et nous continuons \u00e0 optimiser ou \u00e0 dimensionner nos applications en fonction de l'utilisation, de l'ajout ou de la suppression de nouvelles fonctionnalit\u00e9s. Dans l'ensemble, le d\u00e9veloppement agile ajoute des d\u00e9fis de temps \u00e0 autre. Les applications qui d\u00e9pendent des bases de donn\u00e9es peuvent \u00eatre mises \u00e0 l'\u00e9chelle en s\u00e9parant la couche de base de donn\u00e9es et en la mettant \u00e0 l'\u00e9chelle de mani\u00e8re ind\u00e9pendante. L'\u00e9quipe OPS ...<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/ruby-regex-match-guide-with-examples\/\"> <span class=\"screen-reader-text\">Guide de correspondance des expressions rationnelles en Ruby (2026) avec exemples<\/span> Lire la suite \u00bb<\/a><\/p>","protected":false},"author":1,"featured_media":32043,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[384],"tags":[379,629],"class_list":["post-6508","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technical-articles","tag-rails-application","tag-scaling-applications"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Scaling Applications with Multiple Database Connection-RailsCarma Blog<\/title>\n<meta name=\"description\" content=\"Applications depending on databases can be scaled by separating the database layer and scaling it independently. The OPS team does take care of such infrastructure changes based on the application deployment architecture.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/mise-a-lechelle-des-applications-connexion-a-plusieurs-bases-de-donnees\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Scaling Applications with Multiple Database Connection-RailsCarma Blog\" \/>\n<meta property=\"og:description\" content=\"Applications depending on databases can be scaled by separating the database layer and scaling it independently. The OPS team does take care of such infrastructure changes based on the application deployment architecture.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/mise-a-lechelle-des-applications-connexion-a-plusieurs-bases-de-donnees\/\" \/>\n<meta property=\"og:site_name\" content=\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/RailsCarma\/\" \/>\n<meta property=\"article:published_time\" content=\"2015-02-12T04:46:34+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-08-30T15:39:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@railscarma\" \/>\n<meta name=\"twitter:site\" content=\"@railscarma\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\"},\"headline\":\"Scaling Applications with Multiple Database Connection\",\"datePublished\":\"2015-02-12T04:46:34+00:00\",\"dateModified\":\"2022-08-30T15:39:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/\"},\"wordCount\":612,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg\",\"keywords\":[\"rails application\",\"Scaling Applications\"],\"articleSection\":[\"Technical Articles\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/\",\"url\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/\",\"name\":\"Scaling Applications with Multiple Database Connection-RailsCarma Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg\",\"datePublished\":\"2015-02-12T04:46:34+00:00\",\"dateModified\":\"2022-08-30T15:39:46+00:00\",\"description\":\"Applications depending on databases can be scaled by separating the database layer and scaling it independently. The OPS team does take care of such infrastructure changes based on the application deployment architecture.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg\",\"width\":800,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.railscarma.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Scaling Applications with Multiple Database Connection\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.railscarma.com\/#website\",\"url\":\"https:\/\/www.railscarma.com\/\",\"name\":\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\",\"description\":\"RailsCarma is a Ruby on Rails Development Company in Bangalore. We specialize in Offshore Ruby on Rails Development based out in USA and India. Hire experienced Ruby on Rails developers for the ultimate Web Experience.\",\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.railscarma.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.railscarma.com\/#organization\",\"name\":\"RailsCarma\",\"url\":\"https:\/\/www.railscarma.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"width\":200,\"height\":46,\"caption\":\"RailsCarma\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/RailsCarma\/\",\"https:\/\/x.com\/railscarma\",\"https:\/\/www.linkedin.com\/company\/railscarma\/\",\"https:\/\/myspace.com\/railscarma\",\"https:\/\/in.pinterest.com\/railscarma\/\",\"https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mise \u00e0 l&#039;\u00e9chelle d&#039;applications avec plusieurs connexions \u00e0 des bases de donn\u00e9es-RailsCarma Blog","description":"Les applications d\u00e9pendant de bases de donn\u00e9es peuvent \u00eatre mises \u00e0 l&#039;\u00e9chelle en s\u00e9parant la couche de base de donn\u00e9es et en la mettant \u00e0 l&#039;\u00e9chelle ind\u00e9pendamment. L&#039;\u00e9quipe OPS s&#039;occupe de ces changements d&#039;infrastructure en fonction de l&#039;architecture de d\u00e9ploiement des applications.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/mise-a-lechelle-des-applications-connexion-a-plusieurs-bases-de-donnees\/","og_locale":"fr_FR","og_type":"article","og_title":"Scaling Applications with Multiple Database Connection-RailsCarma Blog","og_description":"Applications depending on databases can be scaled by separating the database layer and scaling it independently. The OPS team does take care of such infrastructure changes based on the application deployment architecture.","og_url":"https:\/\/www.railscarma.com\/fr\/blog\/articles-techniques\/mise-a-lechelle-des-applications-connexion-a-plusieurs-bases-de-donnees\/","og_site_name":"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","article_publisher":"https:\/\/www.facebook.com\/RailsCarma\/","article_published_time":"2015-02-12T04:46:34+00:00","article_modified_time":"2022-08-30T15:39:46+00:00","og_image":[{"width":800,"height":300,"url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@railscarma","twitter_site":"@railscarma","twitter_misc":{"\u00c9crit par":"admin","Dur\u00e9e de lecture estim\u00e9e":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#article","isPartOf":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/"},"author":{"name":"admin","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21"},"headline":"Scaling Applications with Multiple Database Connection","datePublished":"2015-02-12T04:46:34+00:00","dateModified":"2022-08-30T15:39:46+00:00","mainEntityOfPage":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/"},"wordCount":612,"commentCount":0,"publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"image":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg","keywords":["rails application","Scaling Applications"],"articleSection":["Technical Articles"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/","url":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/","name":"Mise \u00e0 l&#039;\u00e9chelle d&#039;applications avec plusieurs connexions \u00e0 des bases de donn\u00e9es-RailsCarma Blog","isPartOf":{"@id":"https:\/\/www.railscarma.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage"},"image":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg","datePublished":"2015-02-12T04:46:34+00:00","dateModified":"2022-08-30T15:39:46+00:00","description":"Les applications d\u00e9pendant de bases de donn\u00e9es peuvent \u00eatre mises \u00e0 l&#039;\u00e9chelle en s\u00e9parant la couche de base de donn\u00e9es et en la mettant \u00e0 l&#039;\u00e9chelle ind\u00e9pendamment. L&#039;\u00e9quipe OPS s&#039;occupe de ces changements d&#039;infrastructure en fonction de l&#039;architecture de d\u00e9ploiement des applications.","breadcrumb":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#primaryimage","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2015\/02\/blog_rc2.jpg","width":800,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/aplicaciones-de-escalado-conexion-de-base-de-datos-multiple\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.railscarma.com\/"},{"@type":"ListItem","position":2,"name":"Scaling Applications with Multiple Database Connection"}]},{"@type":"WebSite","@id":"https:\/\/www.railscarma.com\/#website","url":"https:\/\/www.railscarma.com\/","name":"RailsCarma - Soci\u00e9t\u00e9 de d\u00e9veloppement Ruby on Rails sp\u00e9cialis\u00e9e dans le d\u00e9veloppement offshore","description":"RailsCarma est une soci\u00e9t\u00e9 de d\u00e9veloppement Ruby on Rails \u00e0 Bangalore. Nous sommes sp\u00e9cialis\u00e9s dans le d\u00e9veloppement offshore Ruby on Rails, bas\u00e9s aux \u00c9tats-Unis et en Inde. Embauchez des d\u00e9veloppeurs Ruby on Rails exp\u00e9riment\u00e9s pour une exp\u00e9rience Web ultime.","publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.railscarma.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/www.railscarma.com\/#organization","name":"RailsCarma","url":"https:\/\/www.railscarma.com\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","width":200,"height":46,"caption":"RailsCarma"},"image":{"@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/RailsCarma\/","https:\/\/x.com\/railscarma","https:\/\/www.linkedin.com\/company\/railscarma\/","https:\/\/myspace.com\/railscarma","https:\/\/in.pinterest.com\/railscarma\/","https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg"]},{"@type":"Person","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21","name":"administrateur","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/posts\/6508","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/comments?post=6508"}],"version-history":[{"count":0,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/posts\/6508\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/media\/32043"}],"wp:attachment":[{"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/media?parent=6508"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/categories?post=6508"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.railscarma.com\/fr\/wp-json\/wp\/v2\/tags?post=6508"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}