架构从零搭建003-golang架构规划

本文介绍了如何基于Golang从零开始搭建架构,初期采用Beego框架和RESTful API,结合JWT和自建登陆验证,利用ORM进行数据库操作,使用redis作为缓存,日志服务用Elasticsearch,数据缓冲用Kafka,消息推送采用米推和阿里云短信服务,数据仓库使用MaxCompute。随着架构演进,计划转向微服务,探讨微服务带来的挑战及解决方案,并讨论DevOps体系的重要性和流程。
摘要由CSDN通过智能技术生成

基于基本原则,架构方面正好够用就是最好的,禁忌过度设计,但要想好后续的平稳扩展方案

前期设计
本着大道至简的原则设计如下:
web端使用Beego框架,且使用restful风格的API
登陆token验证,本打算使用JWT,但我还是喜欢自建
数据库操作使用ORM
缓存使用redis
日志服务使用elaticsearch
数据缓冲kafka
消息推送:米推
短信推送:阿里云
数据仓库:maxcompute

我也是刚用golang,为了快速搭建我使用了beego。
有人说golang不是面向对象的,beego做的特别像JAVA的MVC面向对象的框架,这与golang面像函数试编程的思路有冲突。
关于这点我想说一下,MVC是设计模式,它不是JAVA专有的,也不是面向对象的语言专有的,golang中的interface与struct配合起来甚至可以更灵活的完成多态、继承、封装。
在我的github上有使用golang实现的一些常用的设计模式:
https://github.com/arno99x/go_study/tree/master/pattern
golang语法很灵活,可以挖掘出更多、更优雅的写法

后期设计
搬家至微服务,让模块间偶合更少,团队更敏捷,扩展更容易
微服务是企业应用不断扩大的必然产物,它便众多的服务管理起来更加的方便,让越来越多的服务加入到服务群中变成了现实,当然对公司技术团队也有更多

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值