Java high availability cluster architecture and a simple analysis of micro Services Architecture

sequence

Most readers are probably wondering why, in this era of micro-services to dubbo, spring cloud represented, I would also like to organize this already "obsolete" high-availability cluster architecture?

I work most of the team is 7-15 people compiled by the development team, the company corresponding projects are mostly small and medium sized project, the largest project PV / UV, it was only 10w / 2w. In such a scenario, companies are generally small and medium entrepreneurs started not long, most of them need the spirit of "cut costs", "with minimal costs to maximize output." Micro-service architecture compared to the high-availability cluster architecture, understand, members of the technical team for the preparation of relatively little, server deployment costs should be relatively higher.

As technical team leader, will certainly have to consider the overall costs, otherwise not be long before the pay talks is an army of the bar. . .

First, how to choose

1, high availability clustering

For small and medium infrastructure project start-up companies and small technical team fast iterative release deployments, pre-low-cost operation, the amount of investment costs by a lateral expansion server compressive outbreak. http://m.qd8.com.cn/yiyao/xinxi21_3709996.html

Features:

  • Low upfront cost of technology development

  • Certain server expansion costs

  • The core team preparation and requires less skill

  • Project Releases deploy almost no dependence on low cost time

  • Server operation and maintenance costs in general

  • Large and separate project module design

  • A more efficient and more stable technical architecture selection

  • Micro Services Architecture obsessive-compulsive disorder NA

2, micro Services Architecture

Compression architecture for server business in large infrastructure projects of large technology companies, the system can be split multiple projects alone operations, large-scale technical team, standardized management platform products, some of the initial investment cost, low-cost expansion of the specified service.

  • Some of the early technology development costs

  • Lower server expansion costs

  • The core team preparation and skill requirements higher

  • Published deployment project dependencies, one by one deployment, high time costs

  • Server operation and maintenance costs are generally higher or

  • Clearer separation module design project

  • More and more fashion tide of technical architecture selection

Second, high availability clustering architecture

1, the necessary server list

  • Server load balancing

  • web server project

  • Cache server

  • The database server (standby)

Note: Some may ask, if small-scale projects stand-alone service, load balancing, if you do not need? The main job was to distribute the load balancing requests to a server, and the other role is to protect the source server, the server does not expose the real IP, significantly reduce the risk of server is *** of DDoS, refer to "being DDoS ***, and analysis about the principles and protection, "  a text. Gastrointestinal Hospital Medical Jiaozuo Guo good: http: //jz.lieju.com/zhuankeyiyuan/37324643.htm

2, expand the server list

  • More web project server (cluster load)

  • Asynchronous service server (distribution center, message queues, job tasks, etc.)

  • The database server (separate read and write, from the master copy)

  • file server

2, Chart

Cluster architecture diagram

Third, micro Services Architecture

1, the server list

  • dubbo / spring cloud server family bucket assembly

  • Server load balancing

  • A module web server project

  • B module web server project

  • C module web server project

  • XXX module web server project

  • Cache server

  • The database server

  • file server

  • Asynchronous service server (distribution center, message queues, job tasks, etc.)

2, Chart

Micro Services Architecture

Note: Source  http://yun.itheima.com/open/217.html

IV Summary

In summary, our services for high-availability cluster and micro-architecture to do a simple scene graph analysis and architecture, not to say what the scene must use what is architecture, not to say what the most current on what architecture, but based on the actual costs and output as a starting point to choose.

Venture company has just started, funds may also hundred million, or engage in micro-service architecture, technical team and the cost of the optical server month accounted for the bulk of a company, not the product line, the company has been closed down;

Have the resources of the company, at every turn you can get ten million even many financing, a higher level of business direction, if just with high-availability architecture, all business modules are bloated in a project, whether it is on code management or personnel management They are huge consumption of resources.


Guess you like

Origin blog.51cto.com/14510351/2451326