Die Anwendung verwendet, wenn sie entwickelt wird, eine einzige Datenbank und die Federkonfiguration ist wie folgt.MySQL-Cluster (Master/Slave) und Hibernate
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/test" />
<property name="username" value="root" />
<property name="password" value="" />
</bean>
<bean id="hibernateProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="properties">
<props>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
...
</props>
</property>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref local="dataSource" />
</property>
<property name="hibernateProperties">
<ref bean="hibernateProperties" />
</property>
<property name="mappingResources">
<list>
<value>...</value>
</list>
</property>
</bean>
<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="dataSource" ref="dataSource" />
<property name="sessionFactory" ref="sessionFactory" />
</bean>
Für die Produktion besteht jedoch die Möglichkeit, dass entweder MySQL-Clustering oder Master/Slave-Replikation verwendet wird. Irgendeine Idee über den Code/die Konfiguration ändert sich dafür?
Auch eine kurze Frage an alle - Wie viel Transaktionen/sec kann eine einzelne MySQL Server-Instanz, die auf einem dedizierten Server läuft, verarbeiten?
Ich erkannte, dass es bessere Ansätze gibt, wie das Einführen einer neuen Ebene, sagen wir Terracotta, und benutze die Hibernate-Entitäten als losgelöste Objekte, so dass eine einzige Datenbank die Anforderung erfüllen kann. –
Hallo, konntest du mysql Replikation mit Spring/Hibernate konfigurieren? Ich habe auch Probleme mit dem gleichen Problem. –