微服务全栈技术学习开源项目,涵盖Java及前端主流技术点

vblog:分布式个人博客管理系统

一、目的

本项目旨在总结前后端分离常用技术点,形成集前端+后端+小程序+移动端一整套的个人技术博客解决方案。技术采用主流前后端分离微服务架构,并涵盖持续集成及自动化部署的相关解决方案。既然是以学习为目的,可能并不是以做成一个博客系统为最终目标,可能会基于此基础之上进行技术的扩充。

技术方面,后端采用Java技术栈,前端使用工程化的SPA单体应用实现。项目计划分为两个版本分别为vue+Spring Cloud、react+Dubbo。除了还该常用的增删改查业务之外,也会涉及高并发、限流、支付、爬虫等主流流行技术点。

业务方面分为后台+前台场景,后台管理系统负责对整个网站进行管理,前台为展示个人博客内容。除了实现博客的常用功能外,也希望加入秒杀、分布式搜索、区块链等功能。

本人才疏学浅,可能有些观点不是很成熟,考虑的没有很全面,望大家积极指正。也希望可以结识更多热爱技术的朋友,一起加油,一起进步。

二、主要技术:

所用到的主要技术点:

image-20191116152652573.png

2.1 后端

数据库:MySql

数据访问层:Mybatis、Spring Data Jpa

NoSql:Redis、MongoDB

持续集成:docker、k8s

分布式搜索:ElasticSearch

消息队列:RabbitMQ、ActiveMQ

版本控制:git

依赖管理:maven

分布式:Spring Boot、Spring Cloud、Dubbo、Spring Cloud Alibaba

其他:Quartz、FFmpeg、Spring、maven、SSO、WebMagic、Netty等

2.2 前端

前端框架:Vue、React、Ant Design、Element UI

网络请求:axios、Fetch

表格图表:ECharts

数据状态管理:redux、vuex

路由管理:react-router、vue-router

小程序:mpvue

代码检查工具:ESLint

代码打包工具:webpack

三、主要功能

1.登录注册:实现对用户名、手机号及扫码的登录实现,实现单点登陆功能。

2.文章模块:对文章进行管理

3.分类目录:对分类目录进行管理

4.文章标签模块

5.作品管理:可添加自己的作品

6.友情链接管理

7.页面管理

8.评论管理

9.菜单管理

10.用户管理

11.网站seo设置

12.媒体资源管理:fastdfs

13.网站爬虫设计:可以抓取指定的数据到个人博客中

14.课程管理:可以发布自己的视频等课程资源,实现收费及免费功能。包括支付

15.统计模块:统计网站访问量、评论量、等信息记录网站的历程

16.搜索:分布式搜索实现对文章的搜索功能。

17.活动与招聘信息

18.吐槽与问答

19.网站数据备份与导入导出

20.数据字典管理

四、项目汇总

目前主流的技术架构采用前后端分离技术实现,在项目工程上来讲,也应是分离的项目。每个项目进行单独开发。下面是本项目中所有的工程目录。

4.1 版本一:

Java采用Spring Boot + Spring Cloud + Spring Data JPA 技术栈

后端项目地址:https://github.com/iquanzhan/vblog-spring-cloud

前端采用react技术栈

前端项目地址:https://github.com/iquanzhan/vblog-web-react

4.2 版本二:

Java采用Spring Boot + Dubbo + MyBatis 技术栈

后端项目地址:https://github.com/iquanzhan/vblog-dubbo

前端采用vue技术栈

前端项目地址:https://github.com/iquanzhan/vblog-web-vue

使用nginx+docker+k8s进行持续集成与发布管理。

五、工欲善其事必先利其器

java采用jdk1.8

5.1开发工具

Java开发工具配置及优化

Java端采用IDEA进行开发:下载地址:https://www.jetbrains.com/

使用IDEA时有不少优质的插件,推荐安装:

  1. Grep console: 支持自定义控制台不同级别的日志颜色
  2. Free Mybatis plugin :根据Mapper类中方法名可直接跳转到mapper.xml
  3. MyBatis Log Plugin : 默认情况下MyBatis显示的脚本不是可执行的,这个插件就可以直接将Mybatis执行的sql脚本
  4. Alibaba Java Coding Guidelines :阿里巴巴代码规范检查插件
  5. Lombok :利用注解的形式,省去get/set等方法
  6. Gsonformat :可以根据json快速生成java实体
  7. Restfultookit :主要用于调试接口,可以生成默认的数据,可根据Url快速找到对应的controller
  8. JRebel :热部署插件
  9. GenerateAllSetter :new POJO类的时候快速生成set方法

如果其他小伙伴有更好的插件推荐,欢迎提出哦~

前端开发工具配置及其优化

Java端采用VS Code进行开发:下载地址:https://code.visualstudio.com/

为了便于开发VS Code也有不少优质的插件推荐:

  1. Auto Close Tag:自动添加html的关闭标签
  2. Auto Rename Tag:修改标签时,自动修改结束标签的名字
  3. Beautify :代码美化格式化工具
  4. Color Info :css中设置颜色时显示色彩信息
  5. ESLint :前端规范插件,可以检查语法错误
  6. Java (ES6) code snippets:ES6语法提示
  7. Path Intellisense:输入路径后自动补全
  8. vscode-element-helper:element UI库的代码提示
  9. npm Intellisense:在导包时对依赖包进行提示
  10. Reactjs code snippets:react代码提示插件
  11. React Redux ES6 Snippets :Redux代码片段工具
  12. React-Native/React/Redux snippets for es6/es7 :react代码片段工具
  13. Vetur : Vue多功能集成插件,包括:语法高亮,智能提示,emmet,错误提示,格式化,自动补全,debugger。vscode官方钦定Vue插件,Vue开发者必备
  14. Bracket Pair Colorizer : 给括号加上不同的颜色,便于区分不同的区块,使用者可以定义不同括号类型和不同颜色

欢迎更多志同道合的朋友一起交流哦,欢迎star

GitHub:GitHub - iquanzhan/vblog: 微博客是一个旨在学习Java+前端技术的分布式个人博客系统。除了会有web端、手机端之外还会有小程序端。「链接」

https://github.com/iquanzhan/vblog

您也可以点击下方更多访问GitHub。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,362评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,330评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,247评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,560评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,580评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,569评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,929评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,587评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,840评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,596评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,678评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,366评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,945评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,929评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,165评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,271评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,403评论 2 342

推荐阅读更多精彩内容

  • 1-------- 走进前端 2-------- jQuery 3-------- CSS 4-------- A...
    依依玖玥阅读 2,315评论 0 34
  • 风景在路上,心情在耳边!
    迎着太阳的蒲公英阅读 156评论 0 0
  • 夜里醒来被半屋的月光惊到,特意去院子里看许久没有见到过的明净。 “皎皎空中孤月轮”,农历十八日的月亮...
    冰黛雨阅读 399评论 3 2
  • 2018年3月1-2日,再游元阳梯田,老虎嘴-多依树-爱春-坝达-箐口。这次云南之行是第九次,目的地是元阳梯田和东...
    随心而往阅读 277评论 0 1
  • 他们说你是自由的蒲公英,随风起舞,甚至流浪天涯;但只有我知道,你是无心的云朵,飘到哪算哪,累了就停下来。从不依...
    芳桥日记阅读 375评论 0 1