Skip to content

技术说明

整体方案


framework.jpg

名称后端描述
后端开发语言php
后端开发框架lumen/doctrine/dingo
前端开发语言HTML5/CSS3/ES6/小程序开发框架
前端开发框架VueJS,Taro,Wepy
数据库mysql
队列redis/rabbitmq
缓存redis/memcached
cdn/oss七牛云、阿里OSS
图数据库neo4j
搜索ES
日志搜集Setntry/ELK
持续集成Git, Gitlib Ci

OSS&CDN方案


支持方案: 七牛, 阿里OSS,微信

  • 前后端分离
    系统前端生成多的css, js
  • 图片, 视频

前端技术方案

各端

PC

  • vue-router/vuex
  • vue+iview组件封装

移动端h5


h5端使用Taro

Taro 是一套遵循 React 语法规范的 多端开发 解决方案。现如今市面上端的形态多种多样,Web、React-Native、微信小程序等各种端大行其道,当业务要求同时在不同的端都要求有所表现的时候,针对不同的端去编写多套代码的成本显然非常高,这时候只编写一套代码就能够适配到多端的能力就显得极为需要。

使用 Taro,我们可以只书写一套代码,再通过 Taro 的编译工具,将源代码分别编译出可以在不同端(微信/百度/支付宝/字节跳动小程序、H5、React-Native 等)运行的代码。

Taro官网

微信小程序

  • Taro
  • Wepy

混合应用

  • h5页面内嵌, 与原生应用双向通讯

工具链

  • webpack 资源打包/开发/发布
  • 基于vue-cli 3的开发框架
    • 命令行工具spx-cli, 用于安装/发布模块包
    • 基于vue-cli 3的插件, 生成样板代码 基础配置 注册模块等

组件库

  • 基于vue的pc端基础组件库
  • 基于iview的业务组件

前后端协作

  • yapi管理接口及文档 mock数据
  • spa应用, 通过yapi约定接口, 分别开发

后端技术方案

语言

php 7.4

框架


前后端分离, 后端脱离传统系统的后端页面渲染. 专心只做API服务端, 因此在技术选型上选择了, 轻量级的lumen框架.

  • Lumen
    为速度而生的 Laravel 框架. Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
    laravel官网
    lumen官网
  • Dingo
  • doctrine orm
    • 支持 master slave
  • 开发模式
    service repository entity

工具链

  • 包管理 - composer
  • 异常处理 - Sentry
  • API - swagger
  • doctrine

使用服务

  • mysql
  • redis
  • neo4j
  • 队列服务
    • rabbitmq
    • redis
  • cdn+oss存储,  目前只支持 七牛云、阿里OSS

部署方案

传统部署方案

kubernetes方案


目前支持阿里云 华为云

技术栈

  • kubernets
  • docker
  • helm
  • helmfile
  • 持续集成: gitlab-ci