First, MySQL
MySQL small high-availability architectureprogram: MySQL dual master, master-slave + keepalived master-slave automatic switchingserver resources: two PC serverAdvantages: Simple architecture, saving resourcesdisadvantage: Unable to scale linearly, master-slave failure requires manual recovery of master-slave architecture
MySQL medium high-availability architecturescenario: MMM + mysql dual master + multi from Highly available programServer resources:1, at least five PC server,2 console MySQL main library, 2 MySQL from the library, 1 sets of MMM Monitor;2, 1 sets of MMM monitor choose low match;3, if you do not use F5 as a load balancer from the library, 2 PC servers can be used to deploy LVS or haproxy+keepalived combination instead;Advantages: Dual Master hot Standby mode, read/write separation, slave cluster linear expansiondisadvantage: Read/write separation needs to be resolved at the terminal, master bulk write operation will produce master-slave delay
MySQL large high-availability architecturemain idea: Middleware +mysql shardingsuch as program: Cobar and other middleware +mysql technologypicture slightly. also, share some of the main MySQL high-availability architectures1. mysql Dual master + keepalived automatic switching scheme (above)2, MySQL master-slave + keepalived master-slave automatic switching scheme (above already)3, Mmm+mysql dual Master + multi from high-availability program (above already)4, MySQL + pecemaker (Heartbeat) + DRBD High Availability5, MySQL + RHCS high-availability program6. MySQL + cluser cluster architecture7, Percona Xtradb Cluster cluster high availability solution8. Middleware + MySQL Large cluster solution (mentioned above)MySQL + pecemaker (Heartbeat) + DRBD High Availability && MySQL + RHCs High Availability programPercona Xtradb Cluster cluster high availability solutionMySQL multi-room deployment architecture ReferenceSecond, Oracle
1. Oracle ActivedataguardServer resources: 2 PC Server1, Oracle's own disaster recovery system, the database is fully redundant protection, can be deployed across IDC;2, Oracle 11g or above version standby can be opened in redo mode, can be used as a data warehouse, or as a backup database;3, can switch, the general will use manual switching mode.
2. Oracle RACserver resources: At least two PC servers as RAC nodes, one for SAN storage,Additional resources: Optical network environmentfeatures of RAC:1, High availability: Ensure that as long as there is a surviving node, will not break the business, maintain business continuity2, dual-machine duplex: RAC is a parallel mode of operation, the relationship between nodes is active to active, each node can provide services to clients3, easy to scale: the increase of RAC, delete node is very convenient4. High throughput: The number of nodes and throughput is proportional to the relationship
3. Oracle MAAScenario: Rac+asm+standby (RAC) DeploymentServer resources: Resources required by RACOther resources: Remote roomNote: Maa is essentially a combination of rac+dataguard. Oracle also has many other highly available architectures, such as replication with Oracle Golden Gate, etc. ..
Third, MongoDB
MongoDB High-availability architectureScenario: MongoDB replica set +sharding shardServer resources:1, 9 units: 6 PC server as a shared node, 3 as the quorum node, three MONGOs and Config are deployed on three shared nodes, such as;2, the horizontal expansion of the Shard, a component of 3 PC server composition;3, the quorum node server does not store the actual data, so the low matching can be. remark:1, consider the high scalability problem, abandon the MongoDB master-slave replication scheme;2, the data security requirements very high business, each group of shards can be composed of 5 PC server;3, it is recommended that developers combine business to select the most appropriate chip key.
Four, Redis
Redis Small, highly available architectureScenario: Redis master-slave replication +keepalived implementation failoverserver resources: two PC serverAdvantages: Simple architecture, saving resourcesdisadvantage: The master-slave switchover has an interval, during which the client will receive an errorScenario: Redis Sentinel Implementation FailoverServer resources:1. Two PC servers deploying Redis, a Redis Sentinel;2, Redis can choose a master multi-slave architecture;3. A Redis Sentinel chooses a low match. Advantage: The Redis official own HA solution, written by Redis authors, hasdisadvantage: After failover occurs, the client needs to correct the address manually
Redis Medium High-availability architectureScenario: Redis master-slave +haproxy load Balancingserver resources: At least 3 PC servers deploy Redis master-slave, two PC server deployments HaproxyPros: Read-write separation, scale-out slaveCons: Master is a single point
Redis Large, highly available architectureScenario: Twemproxy implementing Redis Storage shardingserver resources: At least 6 PC servers deploy Redis master-slave, at least 3 PC server deployments twemproxy,2 PC Server Deployment HaproxyPros: sharding, load Balancing, Redis and twemproxy can be scaled horizontallyCons: Disadvantages of Twemproxy:1, twemproxy node expansion, the original data needs to be re-processed distribution, to avoid the occurrence of the key value can not be found;2, expand the Redis node, the data will not automatically evenly distributed, and need to be processed manually. original link: http://blog.csdn.net/oufua/article/details/52350007
[Go] Database High-availability architecture (MySQL, Oracle, MongoDB, Redis)