设计模式实战之状态模式
系统启动阶段需要完成一些准备工作,最初是通过Spring Application Runner来实现,实现思路用业务语言描述就是: 首先进行启动参数准备 判断是否需要注册主站,如果需要则注册 判断是否需要进行数据同步,如果需要则同步数据 等待数据同步完成,系统准备完成 这种设计可以从某种程度上理解为责任链模式,四个Runner组成了一个责任链,流转到对应的节点判断是否属于该节点的责任并采取动作。 问题反思这样的启动流程设计和Spring容器耦合严重导致了可复用性不是...
设计模式实战之策略枚举
在开发中经常会遇到一些语句拼接的问题,如用于数据库查询的where条件或者用于逻辑判断的表达式。我们在应对这类问题的时候,直觉是使用if-else或者switch条件判断,下面是一个常见的例子: 12345678public static String buildStatement(int type, String[] value){ String statement =""; if(type == 1) statement =...
时序数据可视化的降采样算法
工业场景中,时序数据的可视化是一个无法回避的话题。时序数据的超大数据量给图形的展示性能带来了挑战,而通过降采样的方式减少图形的展示点数来迎合性能的同时,又会带来算法复杂度、算法可伸缩以及正确性等多方面的权衡。 下面通过几种常用的可视化降采样算法的研究和实践对比,为时序数据的可视化降采样算法选择提供参考。我们使用实际生产中的一个案例作为算法描述的基础:需求将10w点降采样到4000,以适配页面的展示效果。 直觉分桶算法在一般情况下,面对一个复杂问题最先起作用的往往是我...
InfluxDB备份策略
设备数据采集的时序数据使用InfluxDB进行存储,InfluxDB提供了两大类备份策略来保障数据安全: 数据库实时主备 实时主备是指通过内置的subscription机制,将主库收到的请求通过go-routine的方式到从库进行重放来实现数据的主备存储。这种方式可以认为是热备。 数据定期备份 定期备份是指通过客户端工具提供的backup命令将数据备份到其他地方进行保存,需要恢复的时候通过restore命令加载数据备份。这种方式根据数据备份的频率存在丢失数据的风险。...
慧工云融资思考
有感于慧工云最新发布的融资新闻《慧工云完成亿元B轮融资,持续驱动中国高效制造》,同样诞生于智能制造元年(2016),同样立足离散制造行业,是什么样的选择导致了慧工云比大制科技走的更快更稳呢?下面从公司使命、产品、行业细分和地域四个方面进行深度剖析。 公司使命慧工云主页的四个banner给我们传递了如下信息: 融入现代工业体系的数字化解决方案,聚焦离散制造业的运营挑战 完整双核的IN3制造运营平台,全面帮助制造企业数字化转型 工厂全面提效的定制化专家,持续为客户创造...
