当前位置:网站首页>Outsourcing student management system architecture document

Outsourcing student management system architecture document

2022-06-09 00:12:00 InfoQ

Preface

As the size of the school continues to expand , The increase in the number of students , The information that needs to be processed is also increasing . In order to improve the management level of student management 、 Design student management system to solve the problem of large amount of student information management 、 It's inconvenient to modify , It is difficult to analyze the data .
This system is mainly applied to the management of all kinds of information of students , The overall task is to realize the systematization of students' information relationship 、 Planning 、 automation

Revision history

null

glossary


1.  Business background

As the size of the school continues to expand , The increase in the number of students , The information that needs to be processed is also increasing . In order to improve the management level of student management 、 Design student management system to solve the problem of large amount of student information management 、 It's inconvenient to modify , It is difficult to analyze the data .
This system is mainly applied to the management of all kinds of information of students , The overall task is to realize the systematization of students' information relationship 、 Planning 、 automation
, The main task is to count all kinds of students' information , Carry out daily management , Such as the addition, deletion, modification and query of student information, as well as the functions of student course selection and score query

2.  Constraints and restrictions

1. Must be in  2022.09.1  It's to be finished before the fifth
2. The cost cannot exceed  100  ten thousand
3. Database adoption  Oracle
4. The quality standard meets  ISO9001-XXXX  standard
5. Must support management 20000 A student


3.  Overall framework

3.1  Architecture analysis

High performance :
For the student management system , There should be only tens of thousands of students , The requirements for student management system are not high ; For some scenes such as class grabbing or score checking , Concurrency will not exceed 500, The processing performance requirements for a system are not high .
High availability :
All student information cannot be lost , The requirements for data storage stability are relatively high , A few hours of server downtime doesn't have a particular impact
Scalable :
Need to connect with students 、 And students' grades , In the follow-up, there are teachers' courses, course selection and other businesses , Subsequent business development needs to be considered
cost 、 Security :
Because it is only used in one school , The server cost should not be high ; Because the system does not involve students 、 Private information of teachers, etc , It does not involve capital flow , The security requirements are not high .

3.2  Overall framework

null
Gateway layer :
  • Nginx As gateway , Visit the website through the public domain name , Use nginx Forward to downstream server
Service layer :
  • It contains three micro services , Student micro services 、 Course microservices and permission microservices , Teachers and students have different rights , Permission management is required
The data layer :
  • The data layer consists of one master and one slave MySQL Database server , The master server is responsible for reading and writing all daily business data , And realize active and standby data synchronization , Active / standby switchover can be performed in case of failure .
  • Because student information is more important , And cannot be lost , Ensure data availability through active and standby services

4.  Detailed design

4.1  Core functions

null

4.1.1  Search for basic information

  • Determine the current login user permissions
  • The authorities of students and teachers are inconsistent , Teachers can query the courses taught and student information , Students can only query their own information

4.1.2  Exam score management

  • Determine the current login user permissions
  • Teachers can upload scores 、 Modify and query
  • Students can only query scores

4.2  Key design

The main equipment MySQL Design :
Through active and standby MySQL To ensure high availability of data , Ensure that student information will not be easily lost , At the same time, it ensures that most of the time data is available

4.3  design code

1)  Data interaction uses Json Format
2)  Adopted by the service layer Java Language development
3)  Database usage Mysql 5.7 edition   The storage engine uses innodb Storage engine

5.  Quality design

...Testability :
  • http  Interface creation  postman  The test case .
  • Dubbo  Interface by  Dubbo  The management console creates test cases .
  • Super administrator has student information 、 Teacher information 、 Permission to delete permission information , This can ensure that some test dirty data after the test can be deleted by the super administrator .
Maintainability :
  • Dubbo  There is a console for management .
  • mysql  It can be managed through the operation and maintenance console .
Observability :
  • System performance observation ,Dubbo、zookeeper、 The server 、mysql  etc. , Use the console provided by the cloud platform for system monitoring .
  • There is not much business data , No need to monitor .
cost :
  • At present, the cost of ECS is relatively low , And because the performance requirements are not high , The overall server can be a normal server .

6.  Evolution planning

In phase I, students' basic information management, course service, authority service and other functions will be completed
In the second phase, it completes the functions of course selection, examination score entry and query
原网站

版权声明
本文为[InfoQ]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/159/202206082324471346.html