上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 33 下一页
摘要: 高层模块不应该依赖底层模块,两都都应该依赖抽象 一个三层的Demo /// <summary> /// 人员实体类 /// </summary> class Person { public int ID { get; set; } public string Name { get; set; } p 阅读全文
posted @ 2022-02-02 20:35 刘靖凯 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 对修改是封闭的,对扩展是开放的。 新需求对于已上线的系统是司空见惯的,最佳实践告诉我们对生产中的代码在扩展功能时不要直接修改,而是去重写一个新的方法,新类型或新服务去扩展它,这道理很简单,任何即有代码的变更,都可能带来灾难。(除非100%把握,或有100%把握的胆子,当然也有一个工种,测试能帮我们来 阅读全文
posted @ 2022-02-02 20:32 刘靖凯 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 最近工作需要,在调研BMP产品(开源和商用),重点了解了activiti和它的商业产品Alfresco Process Services,这是java的体系,成熟,完善(三方开源库是java多年开源积累下的最宝贵的财富),出身.neter的我自然就想看看.net世界里有没有类似的产品。于是就找到两篇 阅读全文
posted @ 2022-02-02 20:27 刘靖凯 阅读(244) 评论(0) 推荐(1) 编辑
摘要: 单一职责是降低耦合度的指导思想,适用于一个微服务,一个类型,一个方法。 微服务层: 微服务一般按业务的领域来进行拆分:药房微服务就是药房的业务,护士站微服务就是护士站的业务,广义上没有什么问题,但对于一些共用业务,就犯难了,究竟放在那个微服务里?还是合并两个微服务?其实这里就单一,把共用的抽离出来, 阅读全文
posted @ 2022-02-02 20:23 刘靖凯 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 官方和老人言,asp.net core中尽量用异步,为什么呢?接下来是个小demo,看看同步异步的差别吧,或许通过这个demo,就明白官方和老人的良苦用心了。 1、创建一个sql server的表 CREATE TABLE [dbo].[Students]( [StuNo] [varchar](50 阅读全文
posted @ 2022-02-02 20:11 刘靖凯 阅读(30) 评论(0) 推荐(0) 编辑
摘要: Jaeger是收集全链路跟踪的信息,在Jaeger收集的信息中,有请求的url信息,有每个请求的时间间隔,借助这些信息可以进行报警,比如一次较长的请求,或者是某些请求的次数和先后等。不管报警的业务规则是什么,首先得收集Jaeger中的信息。 Jaeger有api可以提供这些信息,比如 /api/se 阅读全文
posted @ 2022-02-02 20:03 刘靖凯 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 上一篇定义了两种使用Jaeger的方式:中间件和action过滤器,下面这个例子定义了两个服务 WebAPI01,请求WebAPI02,采用的是中间件的请求方式。 引入JaegerSharp包(或发布到自己的Nuget库里引用) WebAPI01的Startup using JaegerSharp; 阅读全文
posted @ 2022-02-02 19:57 刘靖凯 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 随着微服务的普及,微服务间的调用全链路跟踪也火了起来,Jaeger(https://www.jaegertracing.io/)是CNCF孵化的全链路跟踪型项目,在.net core中,提供了一个Jaeger的Nuget(https://github.com/jaegertracing/jaeger 阅读全文
posted @ 2022-02-02 19:52 刘靖凯 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 最近设计架构时,有个场景,首先是前后端分离,再就是一前端对多后端,这里需要解决两件事,一是前端的html,js,css需要一个host;二是需要一个api网关,能组织后端的api服务。有很多反向代理产品能实现,这里选择了Nginx来实现。 下面是在一个前端的html文件中调用后端api的例子,前端是 阅读全文
posted @ 2022-02-02 19:48 刘靖凯 阅读(45) 评论(0) 推荐(0) 编辑
摘要: GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进,还能用于构建强大的开发者工具。 ——出自 https 阅读全文
posted @ 2022-02-01 16:27 刘靖凯 阅读(161) 评论(0) 推荐(0) 编辑
上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 33 下一页