自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 【go语言微服务实践】#5-go-micro实现JWT认证

线上答题系统,微服务架构的小小实践,项目代码一、服务认证概述  处于安全和保密要求,常常要对API的请求进行鉴权。目前常见的鉴权的方法有JWT、OAuth2.0、OpenID等。我们系统选用的是比较简便的JWT方式。请求端web应用,使用beego框架,服务端是对外提供API的微服务,使用go-micro框架。客户端和服务器端使用RPC(远程过程调用)的方式进行API的调用。因此我们要实现...

2020-03-06 00:04:59 1260

原创 【go语言微服务实践】#4-beego和go-micro自动化生成API文档

线上答题系统,微服务架构的小小实践,项目代码一、概述  单体应用在改造成微服务架构后,模块与模块间的交互会变得复杂,功能增多,接口也会增多,因此十分有必要维护一份系统的API接口说明。答题系统从上到下分为view、controller、service、model四层,controller和前端view之间使用REST API交互,因此使用目前比较流行的swagger进行接口维护。contr...

2020-03-04 23:57:46 1836 1

原创 【go语言微服务实践】#3-docker实现一键部署

线上答题系统,微服务架构的小小实践,项目代码一、概述  微服务的部署有下列几种方式:单主机多服务实例模式、每个主机一个服务实例模式、Serverless部署。这里选择的是在docker容器中部署每一个模块的微服务,因为使用容器可以实现快速启动,方便增加和删除某个模块服务实例,且受操作系统的影响比较小。当然,众多容器的管理也有些挑战。  最终我们的系统架构图如下,其中每个圆圈就是一个独立的...

2020-02-17 19:50:05 731

原创 【go语言微服务实践】#2-进化,变身成微服务

线上答题系统,微服务架构的小小实践,项目代码一、系统架构  将版本一的单应用版本分解为基于微服务架构的分模块版本,分为web应用模块,用户模块user、事件模块event、答题模块answer、题目模块problem、联合模块union6个模块。  由原来的view、controller、model三层架构,变成view、controller、service、model四层。view...

2020-02-17 12:32:54 508

原创 【go语言微服务实践】#1-单体应用的烦恼

线上答题系统,微服务架构的小小实践,项目代码一、概述实现一个基本功能的答题网站,管理员可进入网站发布比赛,选择比赛题目、设置比赛信息等。普通用户可组队参加比,按规定时间作答,获取相应积分。这个网站的功能非常简单,主要是来实践如何将一个传统的单应用架构转变为微服务架构,实践过程也会记录自己的一些心得。版本一基于beego采用传统MVC架构,分为view,controller、model三层...

2020-02-17 12:15:01 469 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除