摘要:讲故事 关注我公众号的朋友,应该知道我写了一些云原生应用日志收集/分析相关的文章,其中内容大多聚焦某个具体的组件: 超级有用的TraceId,快点用起来吧! 如何利用NLog输出结构化日志,并在Kibana优雅分析日志? 既然能直接向ElasticSearch写日志,为什么还要logstash日志摄 阅读全文
posted @ 2020-11-27 18:53 有态度的马甲 阅读(1094) 评论(4) 推荐(3) 编辑
摘要:背景 目前手上的Web项目是前后端分离的,所以有时也会倒腾Vue框架。 前后端应用最终以容器形态、在k8s中部署, 为此我搭建了基于Gitlab flow的Devops流程。 在Devops实践中,容器部署成为良方和事实标准 。 但是在feature开发和自测阶段,不能滥打容器镜像,同时为了屏蔽学习 阅读全文
posted @ 2020-11-04 08:47 有态度的马甲 阅读(1276) 评论(3) 推荐(3) 编辑
摘要:1. 荒腔走板 最近一两个月生产K8s集群频繁出现短时503 Service Temporarily Unavailable,还不能主动复现,相当郁闷,压力山大。 HTTP 5xx响应状态码用于定义服务端错误。 500 Internal Server Error: 所请求的服务器遇到意外的情况并阻止 阅读全文
posted @ 2020-09-13 17:13 有态度的马甲 阅读(676) 评论(0) 推荐(1) 编辑
摘要:利用取消机制缓解web后台查询瓶颈,这不仅针对异步编程,对同步编程依旧有效; 这也不仅是后台工程师的事,前端工程师也要关注. 阅读全文
posted @ 2019-11-19 08:58 有态度的马甲 阅读(3277) 评论(14) 推荐(30) 编辑
摘要:前几天被.NET圈纪检委@懒得勤快问到`共享内存`和`Actor`并发模型哪个速度更快。 阅读全文
posted @ 2021-08-02 10:11 有态度的马甲 阅读(239) 评论(7) 推荐(1) 编辑
摘要:有小伙伴问我每天忽悠的TPL是什么?☹️ 这次站位高一点,严肃讲一讲。 引言 俗话说,不想开飞机的程序员不是一名好爸爸;作为微软技术栈的老鸟,一直将代码整洁之道奉为经典, 优秀的程序员将优雅、高性能的代码看成自己的脸面。 今天探讨下我对.NET并行编程库Task Parallel Library的理 阅读全文
posted @ 2021-07-22 18:57 有态度的马甲 阅读(39) 评论(0) 推荐(0) 编辑
摘要:吃点好的,很有必要。今天介绍常见的两种并发模型: 共享内存&Actor 共享内存 面向对象编程中,万物都是对象,数据+行为=对象; 多核时代,可并行多个线程,但是受限于资源对象,线程之间存在对共享内存的抢占/等待,实质是多线程调用对象的行为方法,这涉及#线程安全#线程同步#。 假如现在有一个任务,找 阅读全文
posted @ 2021-07-21 11:29 有态度的马甲 阅读(351) 评论(3) 推荐(0) 编辑
摘要:打不死我的,只会让我更加强大。 阅读全文
posted @ 2021-07-13 08:45 有态度的马甲 阅读(120) 评论(0) 推荐(1) 编辑
摘要:今天来聊一聊面试八股文:布隆过滤器。 说道布隆过滤器,就免不了说到缓存穿透。 缓存穿透 在高并发下,查询一个并不存在的值时,缓存不会被命中,导致大量请求直接落到数据库。 数据库的响应能力肯定没有缓存大,出线这样的情况,一般是黑客攻击,拖慢了系统的响应速度。 头脑风暴 朴素的分析思路: 在缓存前加一道 阅读全文
posted @ 2021-07-05 08:16 有态度的马甲 阅读(1278) 评论(3) 推荐(11) 编辑
摘要:前面聊了布隆过滤器,回归认识一下位图BitMap,阅读前文的同学应该发现了布隆过滤器本身就是基于位图,是位图的一种改进。 位图 先看一个问题, 假如有1千万个整数,整数范围在1到1亿之间,如何快速确定某个整数是否在这个1千万个整数中呢? 乍一看是一个查找问题,循环、二分查找都是常规思路。 一个好的答 阅读全文
posted @ 2021-06-28 10:32 有态度的马甲 阅读(489) 评论(0) 推荐(5) 编辑
摘要:技术债,迟早要还。 阅读全文
posted @ 2021-06-16 09:53 有态度的马甲 阅读(676) 评论(5) 推荐(6) 编辑
摘要:大家常听到“MD5加密”、“对称加密”、“非对称加密”,那么MD5属于哪种加密算法? 面试问这样的问题,准是在给你挖坑。 "MD5加密"纯属口嗨,MD5不是加密算法,是摘要算法。 今天小码甲带大家梳理加密算法、摘要算法的定义和场景: 伸手党先看答案: 加密算法的目的,在于使别人无法成功查看加密的数据 阅读全文
posted @ 2021-06-07 12:01 有态度的马甲 阅读(1245) 评论(9) 推荐(9) 编辑
摘要:好记性不如烂笔头,记录分片高可用Redis Cluster的搭建过程 Redis集群演进过程 Redis单节点 主从复制: 复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。 故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。 哨兵(Sentinel): 在复制的 阅读全文
posted @ 2021-06-06 10:22 有态度的马甲 阅读(259) 评论(3) 推荐(1) 编辑
摘要:开局两张图,内容全靠刷! 马甲哥看到这样的现象,一开始还是有点懵逼。 这个例子,string是纯粹的引用类型,但是在函数传值时类似于值传递; 我之前给前后示例的内存变化图吧: 根因就是大多数高级语言都把String设计成不可变的:由一个字符串池管理字符串面值。 为什么被设计成不可变。 这个我还真的搜 阅读全文
posted @ 2021-05-31 10:10 有态度的马甲 阅读(418) 评论(0) 推荐(4) 编辑