微服务实践

微服务概念

  1. 什么是微服务?
  2. 微服务解决什么问题?

微服务运维

  1. 负载均衡
  2. 服务注册与发现
  3. 服务网关
  4. 日志
  5. 高可用
  6. 服务内部调用(HTTP/RPC)
  7. 配置中心

技术选型, 每一个技术栈都涉及到了很多可选项, 并没有通用的规则:

  1. 服务网关: kong 或者 nginx-ingress
    2.

日志

所有服务运行与 k8s 集群之上,所以选择使用了 EFK 作为之日采集方案!
EFK: es+fluent bit+kinbana
fluent bit 的配置:

[PARSER]
    Name        docker
    Format      json
    Time_Key    time
    Time_Format %Y-%m-%dT%H:%M:%S.%L
    Time_Keep   On
    # Command      |    Decoder    | Field | Optional Action
    # =============|=======================|=================
    Decode_Field_As   json   log

中文处理需要使用 json 的 Decoder,否则中文会被忽略掉

Github和git使用指南

Q1:从github fork一个repos,这个时候如果upstream新建了一个branch,如何将这个branch同步到自己的repos里面:

  1. 与upstream同步
  2. 从upstream checkout一个新的local branch
  3. 推送新的本地分支到 远程 origin里面
1. git fetch upstream
2. git checkout -b <new_branch> upstream/<new_branch>
3. git push -u origin <new_branch>