Chief architect Richard: The top 6 key points in architecture design

Source: Internet
Author: User

Editor's note: To develop user satisfaction software is not an easy thing, software architects must comprehensively grasp the various needs, weigh the potential contradictions between the requirements, categorized to meet the different needs. In Upyun Open talk the second phase of the "mobile era of Internet financial architecture trends" in the technology sharing, the chief architect Richard brought "digging wealth of Internet financial technology exploration", Richard focus on sharing the current mining structure design of the 6 key points:

1. System-Level separation

From the big system, the main job is to do four latitude things, the first is the Member center, digging a wealth has its own membership system, the second is the cash flow, the third is the Wind control center, the fourth is the product center, and finally some clearing and settlement of things.

Digging the money in all the systems will do some modest separation of key points. At this level, SOA (the method of constructing distributed computing) is essential, and when the system forms a certain scale, it will force us to move in this direction.


In the cash flow system, because the characteristics of the cash flow data and general data characteristics are not the same, it will continue to rise with the latitude of time, not simply according to the user to divide, so the mining of wealth from the user and the timeline two dimensions of the distinction between cash flow. In order to maintain the consistency of data, digging money in the selection of the use of Scala language. In the system system, the middleware will encounter bottleneck with the increase of data volume, so the service-oriented direction of digging wealth is optimized for service, and the application layer does some shielding work for the data layer, separating it.

In addition to the technology to do border separation, we will also carry out some division of responsibility, so that personal advantages can be fully played, digging the money in this point is to emphasize the separation of the front and back, the first to dig the money in the technology just do asynchronous calls, generate some protect level of the specification, but the end of the end of the matter is to be This makes the front-end productivity overall.

2. Message Delivery

The above separation, mainly in the system level of isolation and definition, after isolation also need to carry out communication between the system level, the formation of the system can generate more value services. The use of message-passing mechanism to solve the problem of system interoperability.

In the way of messaging using remoting (distributed processing mode), referring to remoting more or RPC-related concepts, most of the Internet technology system is in the multi-language development, RPC is a cross-language communication standards. Service-based work will basically refer to the use of the Dubbo Service framework. In view of the high concurrency requirements of the financial system is not particularly high, the mining of the use of the HTTP protocol to achieve.

3. Asynchronous processing

After solving the problem of system interoperability through message passing, in order to minimize the impact of the event to the system, in all areas as far as possible to go asynchronous.


Mining wealth, Async typical application scenario

When the mobile side of the server-initiated request directly to the millions, the asynchronous processing to form a complete asynchronous closed loop, and so on after the data processing, the data push to the mobile side. In this process, the server side can do some interaction, but also can do some things locally. The most used in this link is Kafka and Akka technology. Akka is a relatively mature implementation of the Actor model on the Java/scala platform.

Akka essentially no speed limit, all messages can be sent in real-time, which will lead to a little attention will lead to processing node data collapse, so we use the Akka process the first problem is to deal with the current limit. For example, through the ACK mechanism to alleviate the back-end processing pressure.

4. Information storage, more than the lack of

Digging the wealth of information this piece now adopt Ning more not lack of principle, keep every change, replace the original direct cover, so that when the problem can be traced, not because the query does not have some information and confused.

The use of Kafka in the message delivery process is also taken into account in this regard, and we value most of Kafka's multi-copy data storage capabilities.

In addition to the Kafka, we also carried out some small practice, in the maintenance, if the core information changes, previously was directly covered, now is the core field with a version number, later any problem can be based on the time to find out the operation. For example, if the actor crashes, we can go back at any time with the Akka creation function, without the problem of losing the message or losing the data. In short, digging a wealth of technology hope to have their own time machine, out of the problem can be returned.

5. System security

For the financial system, security is a more important issue. In the financial system, ATBS is already the lowest standard. In order to resist foreign hazards, the first possible set of thresholds, so as to reduce technical costs.

At the technical level, basic defense layers, such as network firewalls and application firewalls, are built.

At the operational level, leveraging third parties, we use the technology of SHIELD technology at the level of anti-fraud, with the help of a team of wind-control teams for human intervention.

At the interception level, in order to ensure isolation, and do not want the Kafka after taking over everything, this cluster has problems, this collective will be affected, so want to physically deploy the isolation of the application, the corresponding cluster responsible for the corresponding business processing.

6. Storage Redundancy

From the perspective of distributed storage, the traditional Internet more in the perspective of CP, often is to weaken the storage, but for the Internet financial enterprises, the need to improve the consistency of storage data to the first place. For the core trading system, in order to avoid the weak message queue, the use of simple, flexible multi-write to solve the problem of data consistency.


Digging wealth from a technical framework, it is hoped that the final form of a reactive (response) system that is triggered entirely by events, with time and data flowing, is full of elasticity.


Chief architect Richard: The top 6 key points in architecture design

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.