• Stars
    star
    1,736
  • Rank 26,707 (Top 0.6 %)
  • Language
    JavaScript
  • License
    Other
  • Created about 6 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

前端性能监控系统,消息队列,高可用,集群等相关架构

zanePerfor一款完整、高性能、高可用的前端性能监控和统计平台

Node Vue Egg Mogodb Redis

开发功能进度说明

  • 集成框架选型及其相关配置(已完成)
  • 主重数据库相关配置开发(已完成)
  • web网页sdk开发(已完成)
  • web端数据库数据后端存储逻辑开发 (已完成)
  • web端网站性能数据,错误信息,资源加载信息后台逻辑开发(定时任务:已完成)
  • web端网站PV,UV,IP统计开发(定时任务:已完成)
  • ip地址库存储逻辑(多种缓存策略:本地文件缓存,redis缓存,mongodb缓存)(已完成)
  • web端上报脚本开发(已完成)
  • 分城市统计性能逻辑开发(已完成)
  • 浏览器端后台cms界面开发(已完成)
  • 微信小程序sdk开发 (已完成)
  • 微信小程序相关后端逻辑开发 (已完成)
  • 微信小程序后台cms界面开发(已完成)
  • 微信分城市统计性能逻辑开发(已完成)
  • 用户行为漏斗分析 即用户行为分析(已完成)
  • TOP性能统计(已完成)
  • 省市流量统计热力图分析(已完成)
  • 上报方式新增redis 消息队列(已完成)
  • 索引优化(已完成)
  • Mongodb副本集读写分离开发(已完成)
  • 数据库分表(即分集合)针对于apges,ajaxs,errors,resource,enviroment大数据量表分表,不同应用存储到不同的表中(已完成)
  • Mongodb集群配置 (已完成)
  • github第三方登录 (已完成)
  • 新浪微博第三方登录 (已完成)
  • 微信授权第三方登录 (已完成)
  • Mongodb集群分片开发(优化中)
  • 项目性能优化(已完成)
  • 邮件触发服务开发(已完成)
  • 每日日报邮件发送(已完成)
  • 页面后续操作过程中出现的Error错误、Ajax性能、资源加载的上报(已完成)
  • 所有预警相关业务开发(开发中)
  • Kafka消息队列的引入和使用 (已完成)
  • 应用突破历史流量峰值时触发邮件通知、开发流量预警功能(已完成)
  • 用户访问实时消费流量统计功能(ajax,页面,资源)(已完成)

使用

简单尝试推荐使用 Docker 运行

1. 安装 Docker

Docker 官网:https://www.docker.com/

docker 官网中下载适合自己系统得 Docker 进行安装。

  • 验证 Docker 是否安装成功
Docker --version

2. 推荐安装 Docker Desktop

Docker 安装成功之后,推荐安装 Docker Desktop

Desktop 安装地址:https://www.docker.com/products/docker-desktop/

3. 安装 docker-compose

docker-compose 下载地址:https://github.com/docker/compose/releases

  • 在 Assets 中下载对应的解压包

  • 验证是否安装成功

docker-compose --version

4. 下载代码到本地

git clone git@github.com:wangweianger/zanePerfor.git

5.修改 start-docker-compose.sh 里的 hostIP 为内网 IP

⚠️ 不能是 127.0.0.1localhost

  • 获取 IP 地址方式

cmd 窗口中运行 ipconfig, IPv4 地址即内网 IP

6. 启动 docker-compose

方式一:

# 项目所在目录
./start-docker-compose.sh

方式二

export hostIP='自己的内网IP' && docker-compose up -d --build

6.启动 web 开发环境

# 安装依赖
yarn install

# 启动本地服务
yarn dev

发布生产

维护生产环境配置文件 ./config/config.prod.js

yarn start

项目开发文档

项目说明

  • 项目已部署到正式环境,并已稳定运行一段时间,请放心使用。
  • 前期推荐使用单机数据库或者Mongodb副本集架构,后期根据自身需求考虑是否使用集群分片
  • 目前4核8G单机服务器大概能支撑每日50-100W的pv,8核16G单机服务器可支撑100W-500W的PV流量
  • 如果项目日PV超千万,需要Redis集群,Mongodb集群分片的部署方式
  • 项目后台查询性能增加合适的索引之后,千万以上的数据量可在100ms-2s之内查询出来,平均100-300ms(单机/副本集)

浏览器端使用说明

方式一

在管理后台创建项目之后有详细的使用文档,参考使用即可。

方式二

  • 使用SDK方式上报数据
// install
yarn add web-report

// 使用
import { Performance, axiosReport, defaultReport, fetchReport, jqueryReport } from 'web-report'

defaultReport({
    domain:'http://report.com/api/v1/report/web',
    add:{
        appId:'D3D9B9AA45B56F6E424F57EFB36B0XXX',
    }
})

微信小程序端使用说明

  • 管理后台创建项目后下载sdk,引入到小程序的 app.js 最顶部
// 微信小程序 app.js头部引入sdk
const wxRepotSdk = require('./utils/wx-report-sdk.min');

new wxRepotSdk({
    domain:'http://test.com',
    add:{
        appId:'56F6E424F57EFB36B0XXX'
    }
})

展示效果

More Repositories

1

web-performance-monitoring-system

A complete performance monitoring system.
JavaScript
462
star
2

web-report-sdk

A complet sound web performance report plug-in.
JavaScript
393
star
3

APubPlat

Devops自动化部署、堡垒机开源项目、Web Terminal
HTML
203
star
4

mysqls

It is written in JavaScript,crud for mysql.You can also use transactions very easily.
JavaScript
107
star
5

myblog

我的个人博客,记录自己的所学所享.
75
star
6

zane-data-time-calendar

A simple and complete time calendar plug-in
JavaScript
69
star
7

wx-report-sdk

微信小程序,错误,ajax性能,系统信息,uv等上报信息sdk
JavaScript
40
star
8

react16-webpack3.8-onepage-base-project

react16.0 + webpack3.8 最新单页面集成模板
JavaScript
39
star
9

vue2.5-webpack3.8-spa-base-cms

vue2.5版全家桶+webpack3.8 cms项目基础模板框架
JavaScript
30
star
10

FlutterApp

My first Flutter app. Study Flutter add make an App Demo.
Dart
26
star
11

nodejs-mock-koa2-vue2

node.js开发的一套本地mock静态数据平台系统
JavaScript
16
star
12

zane-web-blog-node.js-ejs-mysql

zane 的node.js+koa2+ejs 博客源码
JavaScript
12
star
13

redux-source-code-learning

redux v4 源码详细解读
JavaScript
8
star
14

zane-koa2-ejs-mysql

koa2+ejs+mysql node.js 基础开发模板
JavaScript
8
star
15

react-native-demo-app

react-native app demo商城开发
JavaScript
6
star
16

vue2.5-webpack4.16-onepage-base-h5

vue2.5,webpack4.16,vue-router15 基础开发模板
JavaScript
6
star
17

vue-calendar

vue1 vue2 小巧全面的时间选择组件 支持双选择器
Vue
4
star
18

react-react-router-webpack

react webpak 打包
JavaScript
4
star
19

zane-koa2-restful-api

koa2 和 node.js 搭建的一条 RESTful api server端 脚手架。
JavaScript
3
star
20

weex-dev

weex 初试
JavaScript
3
star
21

koa2-use-mongoose-learn

Using mongoose to develop node.js
JavaScript
3
star
22

trueme-pro

萃美微信H5开发
HTML
2
star
23

qmx-vue-compent

Vuemo
JavaScript
1
star
24

qmx-vue-one-pag

vue.js 单页面
JavaScript
1
star
25

my-first-quick-app

快应用开发体验
JavaScript
1
star
26

vue2-one-page-base-cms

vue2.0 后台cms 集成模板框架
JavaScript
1
star