应用Dubbo框架打造仿猫眼项目(一) 用户模块开发

章节概要

1.学会API网关权限验证和其他服务交互(用户服务)

2.学会开发开发springboot自定义配置

3.学会Dubbo负载均衡策略选择和使用

 

主要内容

一、修改GUS中的JWT模块

1.增加忽略URL配置

2.修改返回内容匹配业务

3.增加ThreadLocal的用户信息保存

二、业务功能开发

1.增加用户服务并提供接口

2.初步了解API网关与服务间的交互过程

3.根据接口文档开发用户接口

 

具体开发

1.建用户表

DROP TABLE IF EXISTS mooc_user_t;
CREATE TABLE mooc_user_t(
   UUID INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键编号',
   user_name VARCHAR(50) COMMENT '用户账号',
   user_pwd VARCHAR(50) COMMENT '用户密码',
   nick_name VARCHAR(50) COMMENT '用户昵称',
   user_sex INT COMMENT '用户性别 0-男,1-女',
   birthday VARCHAR(50) COMMENT '出生日期',
   email VARCHAR(50) COMMENT '用户邮箱',
   user_phone VARCHAR(50) COMMENT '用户手机号',
   address VARCHAR(50) COMMENT '用户住址',
   head_url VARCHAR(50) COMMENT '头像URL',
   biography VARCHAR(200) COMMENT '个人介绍',
   life_state INT COMMENT '生活状态 0-单身,1-热恋中,2-已婚,3-为人父母',
   begin_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
   update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间'
) COMMENT '用户表' ENGINE = INNODB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;

insert into mooc_user_t(user_name,user_pwd,nick_name,user_sex,birthday,email,user_phone,address,head_url,life_state,biography) values('admin','0192023a7bbd73250516f069df18b500','隔壁泰山',0,'2018-07-31','admin@mooc.com','13888888888','北京市海淀区朝阳北路中南海国宾馆','films/img/head-img.jpg',0,'没有合适的伞,我宁可淋着雨');
insert into mooc_user_t(user_name,user_pwd,nick_name,user_sex,birthday,email,user_phone,address,head_url,life_state,biography) values('jiangzh','5e2de6bd1c9b50f6e27d4e55da43b917','阿里郎',0,'2018-08-20','jiangzh@mooc.com','13866666666','北京市朝阳区大望路万达广场','films/img/head-img.jpg',1,'我喜欢隔壁泰山');

2.测试API网关与服务间的交互过程

 1)复制出一个guns-user模块(修改模块名称相关配置),修改application.yml中相关属性(修改启动端口,关闭jwt验证,增加dubbo地址)

 2)user模块中实现UserApi中的方法,启动zookeeper,启动user模块

 3)gateway模块中在authController中调用userApi的方法,看看user中是否有打印

 

3.gateway配置忽略列表

1)JwtProperties类、application.yml 增加忽略配置属性ignore-url

2) AuthFilter 增加忽略列表代码

 

4.基于用户业务的API功能修改,补全登录、注册、修改、获取等接口

5.去掉guns自身携带的用户名密码验证机制,使用UserAPI登录接口,修改jwt返回里包含userid信息,修改返回类型vo

6.增加ThreadLocal保存用户信息,当做session使用

7.user项目,用户模块开发,dao生成,服务开发

8.gateway项目,用户接口开发

9.用户相关接口测试

10.dubbo启动性检查 check=false(开发时可用,线上不建议)

11.dubbo负载均衡 

 

转载于:https://www.cnblogs.com/yyh19890221/p/10697435.html

打造仿猫眼项目中使用Dubbo的主流版本,可以通过优快云进行下载和学习。 Dubbo个分布式服务框架,可以用于实现大规模的服务化和微服务架构。它提供了服务治理、负载均衡、容错机制等系列特性,可以帮助我们构建高可用、高性能的分布式系统。 在打造仿猫眼项目中,首先需要准备好相关的开发环境,包括JavaDubbo的主流版本以及相关的开发工具。其中Dubbo的主流版本可以在优快云上进行下载,搜索Dubbo相应的版本号,然后下载对应的jar包。 接下来,可以使用Dubbo的主流版本搭建服务提供方和服务消费方。服务提供方可以将猫眼项目中的某些功能封装成服务,然后通过Dubbo进行发布。服务消费方则可以通过Dubbo的负载均衡机制,调用服务提供方的功能。这样,我们就可以实现分布式的服务化架构。 在项目中,还可以使用Dubbo的服务治理特性,例如可以使用Dubbo的注册中心进行服务的注册和发现,可以使用Dubbo的容错机制来提高系统的稳定性和可用性。 在开发过程中,可以参考优快云上的相关资料,例如Dubbo的官方文档、博客、教程等。这些资源可以帮助我们更好地理解和应用Dubbo的主流版本,同时也可以根据自身的项目需求做定的调整和扩展。 总之,使用Dubbo的主流版本打造仿猫眼项目个不错的选择,它可以帮助我们构建高性能、高可用的分布式系统。在完成项目过程中,可通过优快云下载Dubbo的主流版本,并结合相关资源进行学习和研究,以便更好地应用Dubbo的功能和特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值