<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[yue_xin_tech]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/h_l_f</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; h_l_f]]></copyright><item><title><![CDATA[关于架构的认知]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/126186143</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/126186143</guid><author>h_l_f</author><pubDate>Sun, 07 Aug 2022 19:52:29 +0800</pubDate><description><![CDATA[我们先来看看“架构”的含义：架构是软件整体结构与组件的抽象描述，它定义了系统涉及到的各个元素，并将这些元素通过一定的规则联合起来，协同完成整体的目标功能。而这一过程的产物就是所谓的架构图，它将涉及的元素和关系可视化出来，形成有标注、有说明的构建蓝图。实际上，架构它将需要面向多种人群进行阐述，比如 boss 想要了解的是概念，产品经理想看到的是设计，而开发工程师关心的则是能力边界。因此，我们往往会自顶向下的考虑软件的体系结构。从概念、模块、运行、代码的角度去组织。...]]></description><category></category></item><item><title><![CDATA[程序员都应该知道的 21 个 Git 命令]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/125962075</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/125962075</guid><author>h_l_f</author><pubDate>Sun, 24 Jul 2022 18:05:10 +0800</pubDate><description><![CDATA[诞生于2005年的分布式版本管理工具Git，现如今已成为大多数公司协同合作的必备工具之一了。它直到现在依然保持着简单易用、高效管理的特点。相信很多刚踏入职场的猿友们，第一个需要学会使用的就是Git。今天，我们来重温经常使用的20个Git命令，也可当做自己的Git命令速查表。...]]></description><category></category></item><item><title><![CDATA[分布式链路追踪]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/123949999</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/123949999</guid><author>h_l_f</author><pubDate>Mon, 04 Apr 2022 10:38:36 +0800</pubDate><description><![CDATA[前言
传统的单体服务通过日志和性能监控为我们的系统提供了良好的观测手段，随着服务之间的交互越来越多，越来越复杂，这种“各自为政”的策略将使我们看不到整体的关联性。为了提高系统的可见性观察，分布式链路追踪被提了出来，并迅速发展。
背景
分布式体系的构建是以“拆”为核心，其目标是职责分明、高度自治。不同的模块甚至会由不同的团队负责，用不同的语言编写。当我们想要组合这些服务，对外提供统一功能时，我们还需要考虑它的一个可观察性。比如，请求里的服务依赖有哪些，各个节点的耗时是怎么样的，瓶颈在哪里等。
像这种涉及上下文]]></description><category></category></item><item><title><![CDATA[Prometheus 监控系统]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/123765858</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/123765858</guid><author>h_l_f</author><pubDate>Sat, 26 Mar 2022 22:58:33 +0800</pubDate><description><![CDATA[前言
软件的开发不仅仅在于解决业务，它还需要程序尽可能的运行下去，这就涉及到了服务的稳定性。稳定性涉及很多因素，硬件软件都需要保证。为了能让这些条件更加充足，我们需要不断的收集数据，分析数据，监控数据，进而优化能优化的点。Prometheus 在这方面就为我们提供了很好的监控方案。
什么是 Prometheus？
Prometheus 是一个开源的监控和报警系统，它将我们关心的指标值通过 PULL 的方式获取并存储为时间序列数据。如果单从它的收集功能来讲，我们也可以通过 mysql、redis 等方式实现。]]></description><category></category></item><item><title><![CDATA[搜索引擎Elasticsearch简介实践]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/123539647</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/123539647</guid><author>h_l_f</author><pubDate>Wed, 16 Mar 2022 23:39:13 +0800</pubDate><description><![CDATA[前言
之前在寻找日志收集搜索解决方案时，最常看到的便是 ELK：Elasticsearch + Logstash + Kibana 方案。尽管由于它对服务器资源要求很高转而使用 了 Loki，但也对它初步研究过。今天，就对其中的 Elasticsearch 深入了解一番。
Elasticsearch 介绍
Elasticsearch 是一个开源的搜索引擎，我们可以用它来处理文本、地理空间（如坐标）、结构化（如 DB 里的表）、非结构化（如报表、图片）等数据，然后通过简单的 REST API 对其搜索。它的最]]></description><category></category></item><item><title><![CDATA[操作系统面试总结]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/123390116</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/123390116</guid><author>h_l_f</author><pubDate>Wed, 09 Mar 2022 23:08:59 +0800</pubDate><description><![CDATA[1. 进程和线程的区别是什么 ?
进程是资源分配的基本单位，线程是 CPU 调度的基本单位。进程拥有独立的地址空间，线程是共享内存地址的。进程切换的开销比线程要大。
2. 进程间的通信方式有哪些？

管道（Pipe）：在缓存中开辟处输出和输入文件流空间，只能适用于父子进程通信。
命名管道（FIFO）：不同进程的管道通信，通过打开同一个 FIFO 文件进行数据传输。
消息队列（MessageQueue）：存放在内核中的消息链表，简单高效。
共享内存（SharedMemory）：允许两个不相关的进程访问同一个逻]]></description><category></category></item><item><title><![CDATA[gRPC 简介实践]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/123365666</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/123365666</guid><author>h_l_f</author><pubDate>Tue, 08 Mar 2022 23:08:55 +0800</pubDate><description><![CDATA[现代的软件服务大多数是分布式应用程序，通过暴露自己的 API 对内或对外提供了一系列的功能点。服务与服务之间有时是跨语言、跨平台通信的。为了解决这些复杂场景，市面上也涌现了有很多解决方案。比如构建 RESTful 服务，将服务能力转化为资源集合；也有面向函数调用的客户端-服务器模式：远程过程调用（Remote Procedure Calls）。今天要介绍的 gRPC 就是后者的演变，一个非常受欢迎分布式进程间通信技术。]]></description><category></category></item><item><title><![CDATA[docker、k8s 面试总结]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/123241957</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/123241957</guid><author>h_l_f</author><pubDate>Wed, 02 Mar 2022 22:20:26 +0800</pubDate><description><![CDATA[1. Docker 是什么？
Docker 是基于容器技术实现的，容器技术最开始是基于 Linux Container（简称 LXC）技术实现的，通过内核提供的 Namespace 和 Cgroup 机制，实现了对应用程序的隔离以及物理资源的分配。
Docker 在容器基础上发展出了一个完善的生态系统，它将容器视为一种打包格式，将应用程序所需的一切，比如依赖库、运行时环境等都集合在了在一起，使得一次构建，到处运行。
它将开发与运维很好的融合在一起。开发人员可以很轻松的构建、打包、推送和运行应用程序。而且还允]]></description><category></category></item><item><title><![CDATA[受Prometheus启发的开源日志工具:Loki]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/123194587</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/123194587</guid><author>h_l_f</author><pubDate>Mon, 28 Feb 2022 22:44:21 +0800</pubDate><description><![CDATA[提及日志收集搜索框架，最常看到的解决方案就是 **ELK**。虽然现在有 Docker、k8s 帮我们简化了部署流程，但 **ELK** 对硬件的要求却很高。光是 **Elasticsearch** 官网就提及到需要 8 GB 内存以上的机器部署，可见占据的资源之多。为了能降本增效(**穷~~~**)，在网上看到了 Grafana 团队的日志框架: **Loki**。为此进行了深入的了解并应用在了一些项目上。
]]></description><category></category></item><item><title><![CDATA[计算机网络面试知识点]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/122934777</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/122934777</guid><author>h_l_f</author><pubDate>Tue, 15 Feb 2022 00:31:54 +0800</pubDate><description><![CDATA[前段时间找工作搜索 golang 面试题时，发现都是比较零散或是基础的题目，覆盖面较小。而自己也在边面试时边总结了一些知识点，为了方便后续回顾，特此整理了一下。]]></description><category></category></item><item><title><![CDATA[场景设计汇总]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/122914374</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/122914374</guid><author>h_l_f</author><pubDate>Sun, 13 Feb 2022 21:21:00 +0800</pubDate><description><![CDATA[1、如何设计一个秒杀系统
2、RBAC 权限管理设计
3、订单号的设计规则和依据
4、全局唯一序列号的生成
5、电子钱包/支付系统设计与分析
6、如何设计一个高性能短链系统
7、实时排行榜设计
8、敏感词过滤
9、数据量超大的实时查询，如何设计方案？
10、最全面的 Redis 缓存雪崩、击穿、穿透问题解决方案
11、分库分表之终极设计方案
12、高并发系统的限流方案如何实现
13、秒杀业务中不超卖的实现方案汇总
14、百亿级微信红包的高并发资金交易系统设计方案

...]]></description><category></category></item><item><title><![CDATA[redis 面试总结]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/122871214</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/122871214</guid><author>h_l_f</author><pubDate>Thu, 10 Feb 2022 23:15:24 +0800</pubDate><description><![CDATA[前段时间找工作搜索 golang 面试题时，发现都是比较零散或是基础的题目，覆盖面较小。而自己也在边面试时边总结了一些知识点，为了方便后续回顾，特此整理了一下。]]></description><category></category></item><item><title><![CDATA[mysql 面试总结]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/122851944</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/122851944</guid><author>h_l_f</author><pubDate>Wed, 09 Feb 2022 23:39:43 +0800</pubDate><description><![CDATA[前段时间找工作搜索 golang 面试题时，发现都是比较零散或是基础的题目，覆盖面较小。而自己也在边面试时边总结了一些知识点，为了方便后续回顾，特此整理了一下。]]></description><category></category></item><item><title><![CDATA[golang 面试总结]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/122833169</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/122833169</guid><author>h_l_f</author><pubDate>Tue, 08 Feb 2022 23:17:57 +0800</pubDate><description><![CDATA[前段时间找工作搜索golang 面试题时，发现都是比较零散或是基础的题目，覆盖面较小。而自己也在边面试时边总结了一些知识点，为了方便后续回顾，特此整理了一下。]]></description><category></category></item><item><title><![CDATA[操作系统之进程管理、内存管理总结]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/120685734</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/120685734</guid><author>h_l_f</author><pubDate>Sat, 01 Jan 2022 12:19:24 +0800</pubDate><description><![CDATA[计算机是由很多资源组成的，像我们常见的 CPU、内存、硬盘等。如果我们想要使用这些资源去完成某个计算任务，那么就需要有一个管理者来协调这些资源，操作系统就是这个管理者。]]></description><category></category></item><item><title><![CDATA[关于分布式系统共识的思考]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/122156966</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/122156966</guid><author>h_l_f</author><pubDate>Sun, 26 Dec 2021 16:31:55 +0800</pubDate><description><![CDATA[在前面的文章里，我们分析了分布式系统在业务上的一致性技术，即分布式事务，它的结果导向是面向用户的。然而在我们的系统内部，有时也需要面对来自软件架构等更高层次上的一致性要求，比如 Redis 的哨兵模式，Zookeeper 的选举过程等。它们所考虑的一致性更多的是服务节点之间一个共识的达成，当共识达成之后，就可以以此为指导原则，展开更多的协同操作。]]></description><category></category></item><item><title><![CDATA[关于分布式事务的一致性思考]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/121916325</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/121916325</guid><author>h_l_f</author><pubDate>Mon, 13 Dec 2021 22:50:17 +0800</pubDate><description><![CDATA[在关于微服务的设计上，已经有很多成熟的指导方案。比如基于领域模型的，基于事件驱动的。然而，当各个服务各自为战后，在数据的一致性上，却未能有完善的解决方案。或是受性能效率限制，或是实现流程复杂。总之，我们需要采取很多额外的手段去解决分布式服务的数据一致性问题]]></description><category></category></item><item><title><![CDATA[计算机网络 TCP 协议总结]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/120817316</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/120817316</guid><author>h_l_f</author><pubDate>Tue, 26 Oct 2021 22:57:00 +0800</pubDate><description><![CDATA[TCP 相关知识
TCP/IP 协议占据了互联网通信的一大半江山，特别像 TCP 这种保障端到端的可靠传输机制更是相当重要，关于它的实现也很复杂，涉及的知识也很庞大。所以，今天介绍下关于 TCP 的相关重要知识。
我们先来认识下 TCP 的头格式：

其中，我们看到有一个源端口、目的端口，这 2 个元素再加上 IP 层的源地址和目的地址，那么这四元组就可以用来表示 TCP 的某个连接了，相当于数据库里的唯一标识。所以当我们发起一个 TCP 连接时，会发现如果存在相同的端口在运行时，操作系统是不允许的，只有这]]></description><category></category></item><item><title><![CDATA[docker 系列：实践工具]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/120479843</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/120479843</guid><author>h_l_f</author><pubDate>Wed, 20 Oct 2021 23:45:26 +0800</pubDate><description><![CDATA[前言
本文将介绍下在使用 Docker 时的相关经验，比如使用 Docker-compose 进行容器的编排部署，使用 Portainer 对容器进行可视化的管理，以及 DockerFile 的构建建议。相当于是一套组合拳。让我们能更轻松、更方便去管理 Docker 的容器。
Docker Compose
使用 Docker Compose 有一个好处就是可以通过配置化的方式去编排容器。比如我们当前有3个服务，其中 A 依赖于 B，B 依赖于 C，那么我们就可以在 YML 中使用 depends_on 配置]]></description><category></category></item><item><title><![CDATA[docker 系列：底层实现]]></title><link>https://blog.youkuaiyun.com/h_l_f/article/details/120470997</link><guid>https://blog.youkuaiyun.com/h_l_f/article/details/120470997</guid><author>h_l_f</author><pubDate>Wed, 20 Oct 2021 07:45:00 +0800</pubDate><description><![CDATA[总体架构
Docker 采用的是 C/S 架构，使用 REST API、UNIX 套接字或网络接口进行通信。一般客户端会和 Docker 服务运行在同一台机子上，像我们平常使用的 docker build、pull、run 等命令就是发送到客户端上的。客户端也可以独立部署，比如 Docker Compose。
在 Docker 服务端上，一般表现为守护进程，负责监听客户端的请求，然后进行容器的构建、运行和分发。


Docker 守护进程（dockerd）：侦听 Docker API 请求并管理 Docke]]></description><category></category></item></channel></rss>