现有系统部署包括:
1. POS销售系统
2. GLOBAL后台服务器
3. web网站系统
其中pos销售系统依赖的网络模块包括:
1. webservice
2. healthcheck
3. comet
4. consistency ( in future )
5. version
6. registry
POS系统启动流程:
1. 启动本地noebe,依赖本地配置文件
2. 启动注册系统,获取配置信息,依赖本地配置文件,服务器 = pixysoft.net
3. 获取全局同步时间 ,依赖本地配置文件,服务器 = citibox/pixysoft
4. 启动ws.noebe,依赖注册系统信息,服务器 = citibox / pixysoft
5. 启动同步系统,依赖ws.noebe
6. 启动orm,依赖noebe / cst.noebe
7. 启动comet,依赖注册信息系统,服务器 = pixysoft
8. 启动内存数据库,依赖noebe/ws.noebe
9. 装载版本控制,依赖注册系统信息
10. 装载条形码系统,依赖本地配置文件
11. 检查磁盘控件
之前遇到的问题:
1. 同步层不工作。
查询发现是registry注册模块内部错误。导致没有获取有效的配置信息,ws没有启动。
解决方法,更新registry。这里出现一个问题,一旦registry失效,本地的备份丢失,则无法实现全局同步升级
2. 网站访问权限问题。
由于pos配置了一个token的登录,但是登录registry和consistency是不同的服务器,则需要两者的权限验证同步。
解决方法:使用统一权限验证系统,要开发出来。
3. registry的单点故障问题。
一旦registry代码本身发生了错误,就会导致升级模块失败,产生级联反应。
如果版本控制单独隔离,就需要部署系统都注明配置文件,太复杂。而且同样的原理,一旦版本控制代码错误,也会发生相同的问题。不过,现在发生单点瓶颈出现在2个地方,一个是registry、一个是autoupdate。
以后配置文件项目:
1. registryurl
2. tokenusernmae
3. tokenpassword
4. shopcode+machinecode
5. other local setting, basicpath / barcodetype / printer type / shopname ...
其余的配置文件全部通过网络下载。包括全局同步时间。
配置文件包括了:
1. 本地配置
2. 注册表配置
3. 默认配置 针对单点错误的问题。