上一页 1 2 3 4 5 6 ··· 21 下一页
摘要:昨天有朋友在公众号发消息说看不懂await,async执行流,其实看不懂太正常了,因为你没经过社会的毒打,没吃过牢饭就不知道自由有多重要,没生过病就不知道健康有多重要,没用过ContinueWith就不知道await,async有多重要,下面我举两个案例佐证一下? 一:案例一 【嵌套下的异步】 写了 阅读全文
posted @ 2020-04-22 16:17 一线码农 阅读(3228) 评论(36) 推荐(16) 编辑
摘要:在并行编程中,经常会遇到多线程间操作共享集合的问题,很多时候大家都很难逃避这个问题做到一种无锁编程状态,你也知道一旦给共享集合套上lock之后,并发和伸缩能力往往会造成很大影响,这篇就来谈谈如何尽可能的减少lock锁次数甚至没有。 一:缘由 1. 业务背景 昨天在review代码的时候,看到以前自己 阅读全文
posted @ 2020-04-21 17:20 一线码农 阅读(898) 评论(8) 推荐(5) 编辑
摘要:前几天一位朋友去面试,面试官问了他同步,异步,多线程之间是什么关系,异步比同步高效在哪?多线程比单线程高效在哪?由于回答的不好,让我帮他捋一下,其实回答这个问题不难,难就难在只对别人说理论,而没有现杀的例子。 一:异步 1. 到底解放了谁? 从基础的同步说起 要说解放了谁,一定得有几个参与者,举个例 阅读全文
posted @ 2020-04-20 18:57 一线码农 阅读(1944) 评论(9) 推荐(21) 编辑
摘要:一:背景 昨天在看C 函数式编程这本书的时候,有一处让我干着急,需求是这样: 给多行文字加上数字列表项。 针对这个需求你会如何快捷高效的给每个项目加上数字编号呢? 我看书中是这样实现的,如下代码 怎么说呢,需求能实现没有问题,但这里还是累赘了,因使用到了拉链函数Zip 和生成范围的Range,全纠缠 阅读全文
posted @ 2020-04-17 14:44 一线码农 阅读(722) 评论(6) 推荐(7) 编辑
摘要:说到lock锁,我相信在座的各位没有不会用的,而且还知道怎么用不会出错,但让他们聊一聊为什么可以锁住,都说人以群分,大概就有了下面低中高水平的三类人吧。 第一类人 将lock对象定义成static,这样就能让多个线程看到同一个对象,以此实现线程间互斥和保证同步,如果再深问为什么?就怕遮遮掩掩的说好像 阅读全文
posted @ 2020-04-16 22:01 一线码农 阅读(1540) 评论(6) 推荐(10) 编辑
摘要:如果大家读过dapper源码,你会发现这内部有很多方法都用到了yield关键词,那yield到底是用来干嘛的,能不能拿掉,拿掉与不拿掉有多大的差别,首先上一段dapper中精简后的Query方法,先让大家眼见为实。 一:yield探究 1. 骨架代码猜想 骨架代码其实很简单,方法的返回值是IEnum 阅读全文
posted @ 2020-04-15 16:55 一线码农 阅读(816) 评论(0) 推荐(9) 编辑
摘要:在平时开发中经常会看到有些朋友或者同事在写代码时会充斥着各种for,foreach,这种程式代码太多的话阅读性特别差,而且还显得特别累赘,其实在FCL中有很多帮助我们提高阅读感的方法,而现实中很多人不会用或者说不知道,这篇我就跟大家聊一聊。 一:SelectMany 这个方法绝对是提高开发速度的一大 阅读全文
posted @ 2020-04-14 13:25 一线码农 阅读(1269) 评论(5) 推荐(8) 编辑
摘要:现如今当你翻看一些开源项目源码的时候,你会发现现在到处充斥着委托函数,如Func,Action,Predicate,确实现在的C 在函数式编程的路上越来越成为主流,越来越显示威力,曾经的一些经典设计模式写法,在函数式下可以稍微优化一下了,这篇我们就来说说模板方法。 一:实际场景 1. 模板方法定义 阅读全文
posted @ 2020-04-12 11:26 一线码农 阅读(534) 评论(4) 推荐(3) 编辑
摘要:知道为什么要用内插字符串,只有踩过坑的人才能明白,如果你曾今使用string.format超5个以上占位符,那其中的痛苦我想你肯定是能够共鸣的。 一:痛苦经历 先上一段曾今写过的一段代码,大家来体会一下: 这里拥有多达8个占位符,当年写这个的时候,会有三个痛点。 1. 占位符不能写错了 比如这里的 阅读全文
posted @ 2020-04-11 13:40 一线码农 阅读(1826) 评论(24) 推荐(13) 编辑
摘要:前段时间公司根据要求需要将聚石塔上服务器从杭州整体迁移到张家口,刚好趁这次机会将这些乱七八糟的服务器做一次梳理和整合,断断续续一个月迁移完 成大概优化掉了1/3的机器,完成之后遇到了一些问题,比如曾今零零散散部署在生产上一些可视化UI:apollo,kibana,grafana,jenkins 等等 阅读全文
posted @ 2019-11-04 00:00 一线码农 阅读(1726) 评论(2) 推荐(4) 编辑
摘要:真正的落地部署都是希望程序跑在集群下,而不是单机版下测测玩玩,所以这篇就来聊一下怎么使用docker swarm进行部署,因为是swarm是docker自带的, 所以部署起来还是非常简单的。 一:前置条件 准备三台centos机器: 二:构建集群 1. manger节点上使用 docker swar 阅读全文
posted @ 2019-08-03 15:47 一线码农 阅读(1494) 评论(2) 推荐(4) 编辑
摘要:当你有若干个容器之后,你可能就希望实现容器的跨机部署访问了,比如aspnetcore在一台host上,mysql在另外一个host上,如果要实现这样的功能,需要你 借助docker自带的overlay网络模型了。 一: overlay网络模型 要想快速的搭建overlay网络,你可以通过docker 阅读全文
posted @ 2019-07-07 13:39 一线码农 阅读(2473) 评论(1) 推荐(13) 编辑
摘要:这一篇我们来聊聊私有仓库的搭建,其实不管你是通过docker build还是compose的方式进行构建的镜像,最终还是要将生成好的镜像push到远程的仓库中,这样 多个平台可以方便的获取你registry中的镜像,否则你不还得带着你的源代码到处跑不是? 而且私有仓库还利于镜像的获取分发,反正都是内 阅读全文
posted @ 2019-07-04 12:02 一线码农 阅读(2847) 评论(1) 推荐(2) 编辑
摘要:这一篇继续完善webnotebook,如果你读过上一篇的内容,你应该知道怎么去挂载webnotebook日志和容器的远程访问,但是这些还远不够,webnotebook 总要和一些数据库打交道吧,比如说mysql,mongodb,redis,通常情况下这些存储设备要么是以容器的方式承载,要么是由DBA 阅读全文
posted @ 2019-02-22 17:24 一线码农 阅读(2229) 评论(4) 推荐(5) 编辑
摘要:到目前为止大家应该对镜像和容器有了一个大概认知,而且也用了docker进行了一个简单化的部署,但仔细一看问题还有很多,所以这篇我们继续完善。 一:如何让外网访问到容器内应用 我们知道容器内拥有自己的子网,和你的主机ip不在一个网段内,所以宿主之外的机器是无法访问的,要实现的话你只能通过nat转发,在 阅读全文
posted @ 2019-02-20 12:39 一线码农 阅读(1895) 评论(3) 推荐(5) 编辑
上一页 1 2 3 4 5 6 ··· 21 下一页