随笔分类 -  读书摘要

摘要:计算机的五大组成部分1、运算器,CA:central arithmetical2、控制器,CC:central control3、存储器,M:memory4、输入设备,I:input5、输出设备,O:output 阅读全文
posted @ 2023-09-04 09:32 算盘 阅读(7) 评论(0) 推荐(0) 编辑
摘要:合并步骤: 1、进入要合并的分支(如开发分支合并到master,则进入master目录)git checkout mastergit pull 2、查看所有分支是否都pull下来了git branch -a 3、使用merge合并开发分支git merge 分支名 4、查看合并之后的状态git st 阅读全文
posted @ 2022-04-30 13:22 算盘 阅读(601) 评论(0) 推荐(0) 编辑
摘要:1、客户端缓存/浏览器缓存它存在于客户端,并且是私有的(因为它不会与其他客户端共享) 2、网关缓存它是共享的缓存,位于服务器端,所有的API消费者客户端都会共享这个缓存。它的别名还有反向代理服务器缓存,HTTP加速器等。 3、代理缓存它位于网络上,共享的,它既不位于API消费者客户端,也不在API服 阅读全文
posted @ 2021-07-12 15:34 算盘 阅读(334) 评论(0) 推荐(0) 编辑
摘要:Hypermedia as the engine of application state超媒体即应用状态引擎打破了客户端和服务器之间严格的契约REST服务本身的演化和更新也变得更加容易 阅读全文
posted @ 2021-06-26 11:06 算盘 阅读(140) 评论(0) 推荐(0) 编辑
摘要:1、snapshot(常用的)速度快,但是可能丢失一段数据可以配置一些自动保存策略:例如-1分钟只要有修改就保存,30分钟修改多少次就保存save/bgsave 主动save阻塞 bgsave非阻塞的 2、AOF通过日志来恢复数据,任何操作都需要日志这个效率太低;数据不会丢失 阅读全文
posted @ 2021-03-06 18:55 算盘 阅读(218) 评论(0) 推荐(0) 编辑
摘要:1、服务区对客户端发来的请求(request)进行解析2、请求被转发给一个预定义的处理器(handler)3、处理器可能会从数据库中取出数据4、处理器根据取出的数据对模板(template)进行渲染(render)5、处理器向客户端返回渲染后的内容作为对请求的响应(response) 阅读全文
posted @ 2021-02-05 14:05 算盘 阅读(369) 评论(0) 推荐(0) 编辑
摘要:1. 切片:切片是数组的一个引用,因此切片是引用类型。但自身是结构体,值拷贝传递。2. 切片的长度可以改变,因此,切片是一个可变的数组。3. 切片遍历方式和数组一样,可以用len()求长度。表示可用元素数量,读写操作不能超过该限制。 4. cap可以求出slice最大扩张容量,不能超出数组限制。0 阅读全文
posted @ 2021-01-26 16:42 算盘 阅读(62) 评论(0) 推荐(0) 编辑
摘要:1、append-用来追加元素到数组、slice中,返回修改后的数组、slice2、close-主要用来关闭channel3、delete-从map中删除key对应的value4、panic-停止常规的goroutine (panic和recover:用来做错误处理)5、recover-允许程序定义 阅读全文
posted @ 2021-01-18 13:57 算盘 阅读(226) 评论(0) 推荐(0) 编辑
摘要:1、从[参数]的传递方面来看,GET请求的参数是直接拼接在地址栏URL的后面,而POST请求的参数是放到请求体里面的。2、从[长度]限制方面来看,GET请求有具体的长度限制,一般不超过1024KB,而POST理论上没有,但是浏览器一般有个界限。3、从[安全]方面看,GET请求相较于POST,因为数据 阅读全文
posted @ 2020-12-17 09:36 算盘 阅读(99) 评论(0) 推荐(0) 编辑
摘要:1、缓存失效,导致数据不一致2、缓存穿透,查询无数据时,导致缓存不生效,查询都落在数据库3、缓存击穿,缓存失效瞬间,大量请求访问到数据库4、缓存雪崩,大量缓存同一时间失效,导致数据库压力 阅读全文
posted @ 2020-10-29 09:21 算盘 阅读(55) 评论(0) 推荐(0) 编辑
摘要:1、添加Ocelot2、添加配置文件ocelot.json3、添加配置读取代码4、注册Ocelot服务5、注册Ocelot中间件 阅读全文
posted @ 2020-10-19 15:07 算盘 阅读(99) 评论(0) 推荐(0) 编辑
摘要:1、定义要处理的异常类型或返回值2、定义要处理动作(重试、熔断、降级响应等)3、使用定义的策略来执行代码 阅读全文
posted @ 2020-10-16 09:37 算盘 阅读(545) 评论(0) 推荐(0) 编辑
摘要:1、提供几乎所有主流语言的实现,打破语言隔阂2、基于HTTP/2,开放协议,受到广泛的支持,易于实现和继承3、默认使用Protocol Buffers序列化,性能相较于RESTful Json好很多4、工具链成熟,代码生成便捷,开箱即用5、支持双向流式的请求和响应,对批量处理、低延时场景友好 阅读全文
posted @ 2020-10-09 09:44 算盘 阅读(319) 评论(0) 推荐(0) 编辑
摘要:1、全局注册2、ServiceFilter(还要注册ConfigureService)3、TypeFilter4、IFilterFactory(还要注册ConfigureService)其实2、3、4的本质是一样的,都是基于FilterFactory 阅读全文
posted @ 2020-09-25 09:55 算盘 阅读(561) 评论(0) 推荐(0) 编辑
摘要:1、URL重定向URL重定向和URL重写之间的用词差异乍一看可能很细微,但这对于向客户端提供资源具有重要意义。 ASP.NET Core的URL重写中间件能够满足两者的需求。 URL重定向是客户端操作,指示客户端访问另一个地址的资源。这需要往返服务器。 客户端对资源发出新请求时,返回客户端的重定向U 阅读全文
posted @ 2020-09-13 13:34 算盘 阅读(1261) 评论(0) 推荐(0) 编辑
摘要:URL重写是根据一个或多个预定义规则修改请求URL的行为。URL重写会在资源位置和地址之间创建一个抽象,使位置和地址不紧密相连。在以下几种方案中,URL重写很有价值1、暂时或永久移动或替换服务器资源,同时维护这些资源的稳定定位符2、在不同应用或同一应用的不同区域中拆分请求处理3、删除、添加或重新组织 阅读全文
posted @ 2020-09-06 16:07 算盘 阅读(269) 评论(0) 推荐(0) 编辑
摘要:Use 方法可使管道短路(即不调用next请求委托) Run 是一种约定,并且某些中间件组件可公开在管道末尾运行的Run[Middleware]方法 Map*扩展用作约定来创建管道分支。Map基于给定请求路径的匹配项来创建请求管道分支。如果请求路径以给定 路径开头,则执行分支 阅读全文
posted @ 2020-09-05 12:22 算盘 阅读(284) 评论(0) 推荐(0) 编辑
摘要:1、DI适用于具有复杂的依赖关系的对象。控制器、服务、适配器和仓储都是可能添加到DI中的对象示例 2、避免在DI中直接存储数据和配置。例如,用户的购物车通常不应添加到服务容器中。 配置应使用选项模型。同样,避免"数据持有者"对象,也就是仅仅为实现对某些其他对象的访问而存在的对象。如果可能,最好通过D 阅读全文
posted @ 2020-09-03 17:59 算盘 阅读(197) 评论(0) 推荐(0) 编辑
摘要:1、[FromBody]——针对复杂类型参数进行推断。 此规则不适用于具有特殊含义的任何复杂的内置类型,如IFormCollection和CancellationToken。 绑定源推理代码将忽略这些特殊类型。对于简单类型(例如 string 或 int ),推断不出 [FromBody]。因此,如 阅读全文
posted @ 2020-09-03 15:11 算盘 阅读(106) 评论(0) 推荐(0) 编辑
摘要:IOC 控制反转是一种目标1、解耦2、屏蔽细节 DI依赖注入:是实现IOC的手段 阅读全文
posted @ 2020-09-01 10:27 算盘 阅读(127) 评论(0) 推荐(0) 编辑