当前位置: 首页 > news >正文

手机wap网站开发教程站长工具推荐seo综合查询

手机wap网站开发教程,站长工具推荐seo综合查询,盐步网站制作,中企动力做网站服务怎么样1. 引言1.1 为什么需要规则引擎在业务的早期时代#xff0c;也许使用硬编码或者逻辑判断就可以满足要求。但随着业务的发展#xff0c;越来越多的问题会暴露出来#xff1a;逻辑复杂度带来的编码挑战#xff0c;需求变更时改变逻辑可能会引起灾难重复性的需求必须可重用也许使用硬编码或者逻辑判断就可以满足要求。但随着业务的发展越来越多的问题会暴露出来逻辑复杂度带来的编码挑战需求变更时改变逻辑可能会引起灾难重复性的需求必须可重用否则必须重复性编码运行期间无法即时修改规则但重新部署可能会带来其他问题上线前的测试变得繁琐且不可控必须花大量的人力和时间去测试这些困境在『 小明历险记规则引擎 drools 教程一』 一文中可以体会一番一开始只是简单的根据购物金额来发放积分运行期间又要更改为更多的规则层次如果不及时引入对应的规范化处理机制开发人员将慢慢坠入无止尽的业务深渊。对此聪明的做法是在系统中引入规则引擎对业务操作员要提供尽量简单的操作页面来配置规则规则引擎和配置尽量不要耦合到一块。1.2 .Net Core 环境下的选择 -- Nrules目前最流行的规则引擎应该是Drools, 用 Java 语言编写的开放源码规则引擎使用 Rete 算法对所编写的规则求值其操作流程如下对于 .Net 应用来说可以通过 Kie 组件提供的 Rest 接口调用规则引擎运算。然而其过于庞大仅仅只是需要规则引擎计算核心的部分。对此查找了 .Net 中开源的规则引擎发现只有同样实现 Rete 算法的 Nrules 满足要求支持 .Net Core运行时加载规则引擎。注本文参考借鉴了美团技术团队 从 0 到 1构建强大且易用的规则引擎 一文的设计思路对 Drools 从入门到放弃。2. Nrules 实战 -- 电商促销活动规则引擎设计2.1 了解 NrulesNRules 是基于 Rete 匹配算法的.NET 生产规则引擎基于.NET Standard 支持 4.5 的应用提供 流式声明规则、运行时构建规则、专门的规则语言(开发中不推荐使用到生产基于.Net 4.5 而不是 .NETStandard )。其计算机制也与其他规则引擎大同小异2.2 设计规则配置前文提到 对业务操作员要提供尽量简单的操作页面来配置规则 所以我们定义促销活动的规则配置就要尽量简单。在设计模型时我们必须先参考现实生活中遇到的电商促销活动大致可以想到有这么几种活动类型满减促销、单品促销、套装促销、赠品促销、满赠促销、多买优惠促销、定金促销等。在这里我选择对多买优惠促销做分析多买促销优惠即所谓的阶梯打折如买一件9折买两件8折其模型大致如下这里为了简化设计设计的模型并不会去约束平台、活动范围、会员等级等仅仅约束了使用的产品 id 范围。为了匹配现实中可能出现的组合优惠类似满减活动后还可以使用优惠券等现象和相反的独斥现象如该商品参与xx活动后不支持X券设置了一个字段来判断是否可以组合优惠也可以理解为所有活动都为组合优惠只是有些组合优惠只有一个促销活动。注想了解更多关于电商促销系统设计可参考脑图2.3 规则配置转换为了实现 规则引擎和配置尽量不要耦合到一块必须有中间层对规则配置进行转换为 Nrules 能够接受的规则描述。联系前文的计算机制我们可以得到这样一个描述模型由于 Nrules 支持流式声明所以约束条件和产生的结果都可以用 LambdaExpression 表达式实现。现在我们需要把阶梯打折的配置转换成规则描述那我们需要先分析一下。假设满一件9折满两件8折满三件7折那我们可以将其分解为:大于等于三件打 7 折大于等于两件且小于三件打 8 折大于等于一件且小于两件 9 折基于此分析我们可以看出只有第一个最多的数量规则是不一样的其他规则都是比前一个规则的数量小且大于等于当前规则的数量那么我们可以这样转换我们的规则配置:2.4 生成规则集合在 Nrules 的 wiki 中为了实现运行时加载规则引擎我们需要引入实现 IRuleRepository 所以我们需要将描述模型转换成 Nrules 中的 RuleSet2.5 执行规则引擎做了转换处理仅仅是第一步我们还必须创建一个规则引擎的处理会话并把相关的事实对象fact传递到会话执行触发的代码相关对象发生了变化其简单代码如下2.6 应用场景示例我们假设有这么一个应用入口传入一个购物车这里等价于订单id获取其可以参加的促销活动返回对应活动优惠后的结果并按总价的最低依次升序那么可以这么写:假设这么一个购物车id买一件时最优惠是参加 A 活动买两件时最优惠是参加 B 和 C 活动那么其效果图可能如下:3. 结语本文只是对规则引擎及 Nrules 的简单介绍及应用过程中隐藏了很多细节。在体会到规则引擎的强大的同时还必须指出其局限性规则引擎同样不是银弹必须结合实际出发。扩展阅读Martin Fowler应该使用规则引擎吗?原文地址: https://www.cnblogs.com/chenug/p/9160397.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com
http://www.sadfv.cn/news/134901/

相关文章:

  • 自助建站网信息发布平台怎么在58上做公司网站
  • 网站官网建设做个人网站要多少钱
  • 苏宁易购网站建设的目标wordpress做登录
  • 网站建设图书室内设计公司排名2023
  • 在服务器上部署网站网站过期后
  • 公司网站开通整形网站建设方案策划书
  • 网站架构怎么看网上哪个购物平台最值得信赖
  • 招标网站的服务费怎么做分录在哪个网站可做网络夫妻
  • 商城网站建设net2006新站整站排名优化火速公司
  • 廊坊手机网站邦邻网站建设
  • google 网站收录程序源代码下载网站
  • 台州市环保局网站开发区爱情动做网站推荐
  • 公司网站怎样维护运营哪家网站
  • 动态域名解析 免费成都百度推广优化
  • 高新区规划建设局网站wordpress集成插件下载
  • sqlite做网站怎么用个人电脑做网站
  • 青岛网站建设q.479185700強快速网站优化技巧
  • 十堰网站优化价格最低价网站建设
  • 西安网站建设有那些公司好品牌买购网
  • 网站布局设计软件行业门户网站模板
  • 小网站搜什么关键词设计运动品牌网站
  • 虹口专业做网站网站建设方案服务器
  • 网站建设案例教程视频网站模板 带手机端
  • 网站建设与维护教学课件网站换服务器有影响吗
  • 石家庄模板建站网站建设课程设计格式
  • 自己做网站设计制作163企业邮箱申请
  • 成品网站源码1688自动跳转注册wordpress账号
  • 外国设计网站做哪类视频网站需要视频牌照
  • 网站建设中网页代码物流公司排名
  • 如何使用华为云虚拟主机建设网站常见网站建设