You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.4 KiB
1.4 KiB
一、整体架构
整体架构分为三部分:数据库类、文件存储类、WEB
程序类(前端与后端、小程序、公众号等统称)
二、数据库类
指Mysql
,Pika
等用于数据库和缓存的应用程序,不使用Docker
部署,不使用K8S
部署,因为网上有说法称数据库用于虚拟化部署会降低性能,不建议,这里也就单独采用一台(或多台)数据库服务器进行独立部署。
其中Mysql
采用MariaDB
最新版本。
Mysql
开发时采用一主一从的架构,JFinal
通过代码层面原生支持读写分离,最大限度保证数据库的高并发。
Pika
开发时采用集群化部署,可以横向无限扩展。JFinal
在代码层面原生支持,最大限度保证数据库的高并发。
三、文件存储类
系统原生支持集群部署,高并发,所以,文件存储不能使用简单的NFS
、共享磁盘等技术,要求采用支持S3
协议的Mino
来处理,这样,一旦未来有机会接入华为云、阿里云等支持S3
协议的云端服务,不用修改代码 ,同时,Minio
可以保证无论是集群中哪台主机上传的文件,都是可以互相访问的。
四、WEB
程序类
采用K8S
来部署,可以无限横向扩容,不停机更新代码,弹性扩容、版本管理、版本回滚等一系列优点。