# 服务拆分

# 业务层

模块 项目名 描述
乘客端 api-passenger 乘客端
司机端 api-driver 司机端
司机听单 api-listen-order 司机听单

# 能力层

APP升级 service-app-update
订单 service-order
派单 service-order-dispatch
乘客用户管理 service-passenger-user
短信 service-sms
计价 service-valuation
验证码 service-verificatiopn-code
钱包 service-wallet
支付 service-payment

springCloud基础

注册中心 cloud-eureka
配置中心 cloud-config-server
网关 cloud-zuul
熔断监控(ui) cloud-hystrix-dashboard
健康检查 cloud-admin
链路追踪 cloud-zipkin-ui

基础common

​ 通用,工具类,异常,校验

# 用到的技术

boot,cloud,maven,git,mysql,redis,mq

# 第三方:

短信服务(腾讯,阿里,华信)

语音服务:隐私号.可提供录音

文件服务:oos

地图:高德

消息推送:极光,透传,通知

支付:微信,支付宝

航旅纵横:查航班

发票:百望云

前端:vue.android,ios

# 面试:

包装很重要

包装:商务来公司做个技术交流,我们也了解他们怎么怎么,技术情况,和我们业务结合是否匹配,开发是否易用,稳定..

能力层:qps 2000 (带上机器配置说),有些300

加入需要2000*1000,了解该如何做等等.

接口定了之后,app,后端,同时开发.

# 接口设计

  1. 后端定接口

    restful(资源变现层状态转移):风格.多种实现,http.

    重在:资源

  2. 考虑的点

    协议:https

    域名:/restapi.yuming.com/

    版本:v1

    路径:/xxoo/xxoo/(名词)

    动作

    post:新建

    put:修改(修改后的全量数据)

    patch:修改(修改哪个,传哪个)

    delete:删除

    get:查询

# 接口安全

  1. CIA:保密性,完整性,可用性

    手机号,身份证号,数据库层脱敏

  2. 数据层面:sql注入,(id,sql)

    select * from table where name = (val;delete table)

    过滤jsoup框架

  3. xss:>,spring-htmlUtils.

    在正常用户请求中执行了黑客提供的恶意代码,问题出在:用户数据没有过滤,转义

    csrf:人机交互,token.

    冒充比人的登录信息,问题出在:没有防范不信任的调用

    owasp-java-html-sanitizer (opens new window)

  4. 数据权限控制

    link1连接

    A请求:删除order/a1

    B请求:删除order/a1,不允许删除比人的