版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gohuge/article/details/84758774
一、框架说明
框架支持大量网络IO、密集性运算和存储服务,开发效率高,复杂度低,招聘容易,支持一下行业特性
- 随时开服,一天多服
- 业务收尾,多服合并
- 疯狂灌人,配置逐步增大
- 快速回滚,时间点局部恢复
设计预期
- 高性能、高容灾、灰度版本管理、热更新、监控
- 灵活调度、分布式、(master部分)去中心化
- 高扩展性、云计算、超大容量、动态扩容
- 数据安全、快速备份还原、每日增量、每周快照、实时写入
框架元件
- 网络:网络通信包含http、tcp、websocket、udp 协议和消息路由
- 配置启动:基础组件运行、流程控制、控制台调用
- 数据存储:数据库操作、本地化、数据散列、灵活转移
- 分布式:动态管理、灵活调度、云计算和结果归并、脑裂、主从竞争
其他服务
- 日志服务:日志分类输入、日志转储、日志筛选
- 缓存服务:本地缓存、独立缓存
- 全局服务:全局管控服务,中控
二、架构图
三、Download & go get
- get依赖库在库的readme中有描述需要get的相关库
- get完成后,进入firedog目录 go run ./src/main.go 程序运行
- 程序运行后,会启动控制台,exit 退出控制台(控制台调用还在增设中)
- 程序启动后,xml会解析xml中配置的内容
- xml中的配置解析完毕后,会将定义和声明保持至内存,然后执行init的内容
- init中的内容执行完毕,将开始执行mfa
程序启动完毕!
如何使用框架写构建应用
- 框架中app目录为应用代码的目录,res为资源文件,conf为配置文件,log为日志文件
- 在app中写的程序,可以自己到处调用实现服务启动,也可以通过xml配置调用启动服务
- 如果要使用xml配置来启动服务,需要向使用util.Module 注册模块,app目录中有相关实例
四、源码
扫描二维码关注公众号,回复:
4349256 查看本文章
预计2019年3月左右开源,先做一些准备工作。