<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[stackfuture的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/stackfuture</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; stackfuture]]></copyright><item><title><![CDATA[WeMark免费支持AI生成图片]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/151225926</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/151225926</guid><author>stackfuture</author><pubDate>Fri, 05 Sep 2025 16:21:28 +0800</pubDate><description><![CDATA[WeMark是一款AI驱动的微信公众号编辑器，提供智能图文生成功能。用户可通过简单五步操作生成AI图片：启动机器人→点击图片图标→选择AI生成→输入关键词→生成图片，不满意可重新生成。编辑器支持图片搜索、随机推荐及多种尺寸选择，生成后一键插入文章。文中以生成NBA球星主题文章为例，展示了如何用AI撰写科比、詹姆斯等球员的传奇故事并自动配图，最终形成包含标题、章节和匹配图片的完整推文。]]></description><category></category></item><item><title><![CDATA[Go 并发实战核心编程【一】]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/124519256</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/124519256</guid><author>stackfuture</author><pubDate>Sat, 30 Apr 2022 21:36:10 +0800</pubDate><description><![CDATA[Go 并发实战核心编程【一】1. 需求启动一个goroutine，将1-10000的数字放入chan中启动4个goroutine从chan中读取数字，并计算是不是素数是素数就讲结果放入结果chan中最后遍历结果chan，打印素数集合2. 思路这道题思路很简单，首先明确一个点就是这个需求有三种类型的goroutine：第一种类型就是生产者，它主要负责数据的生产；第二种类型就是消费者，他主要负责消费数据做加工；第三种类型就是main goroutine，他主要负责调度这些goroutine并且等待他们退出。明确]]></description><category></category></item><item><title><![CDATA[简历中的项目到底该如何写？面试中该如何介绍项目？看这篇就足够了]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122686678</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122686678</guid><author>stackfuture</author><pubDate>Tue, 25 Jan 2022 15:49:34 +0800</pubDate><description><![CDATA[简历中的那些项目 前言前几天有人私信问我，说项目这块没啥亮眼的地方，感觉面试官没啥可问的，就直接让他写算法了。后来看群里的问题有很多很相似，那么我抽时间和几位大佬聊了下，在他们面试候选人的过程中更看重项目的什么，聊完之后我总结了下，所以才有了这边文章。1. 一个群友的面经群友说：面试官让他介绍最近在做的项目。他的回答是：他们做的这个项目是XXX，主要是面向XXX用户提供的功能，这个项目已经上线一年了，基本没出过什么问题。然后呢面试官没听出什么亮点，也不知道候选人具体做了什么，就继续追问：你在其中做了什么？.]]></description><category></category></item><item><title><![CDATA[分布式锁的一些细节问题，值得收藏]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122623552</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122623552</guid><author>stackfuture</author><pubDate>Fri, 21 Jan 2022 16:05:48 +0800</pubDate><description><![CDATA[聊聊后端面试那些事 分布式锁问题我看在技术大群里面有人问分布式锁问题，说是被面试官各种刁难，我是实在看不下去了，面试官意思很明确，你们有造火箭的经验吗，有的话来他们公司造自行车，没有的话：今天面试就到这里了！但是说实话面试官没必要因为这个问题继续追问，没啥意思，但是又不得不问，确实有些企业用到分布式锁了。没办法，逼迫你必须得背会它。接下来就说下群友面试碰到的问题，因为候选人可能自己已经掌握了实现分布式锁的原理，但是被面试官问到细节可能就不清楚了，因此给大家讲下这块。1. setnx+expire+del问.]]></description><category></category></item><item><title><![CDATA[Nacos服务注册和发现以及配置管理技术分享，Go中接入非常简单极易上手]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122583906</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122583906</guid><author>stackfuture</author><pubDate>Wed, 19 Jan 2022 16:24:46 +0800</pubDate><description><![CDATA[Nacos服务发现注册和配置管理分享1. 为什么使用Nacos“因为现在主流公司已经开始推荐使用nacos了，nacos的两大主要作用：一个是服务注册发现，一个是配置管理。”2. Nacos是什么？3. Nacos的结构和组件4. 了解几个Nacos概念5. Nacos角色6. 安装部署安装和部署特别简单，支持单机部署和集群部署，详情可参考nacos的官网。部署完成之后页面长这个样子：对上面几个名词做下解释：7. 配置管理可以从页面导入配置，如下图所示，
在dev环境下，新建两个配置文件：service1.]]></description><category></category></item><item><title><![CDATA[Go中按次序交替打印1212...，你知道它背后的设计模式吗]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122555700</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122555700</guid><author>stackfuture</author><pubDate>Tue, 18 Jan 2022 14:21:08 +0800</pubDate><description><![CDATA[聊聊后端面试那些事 让你goroutine交替打印1212...首先这道题看似是两个goroutine交替打印，实则是有很多细节需要考虑，而且背后的设计模式就是生产者消费者模式。代码演示下简单的生产者消费者模式：package&nbsp;main

import&nbsp;"fmt"

func&nbsp;main()&nbsp;{
&nbsp;done&nbsp;:=&nbsp;make(chan&nbsp;bool)&nbsp;//控制结束退出的信号
&nbsp;ch&nbsp;:=&nbsp;mak.]]></description><category></category></item><item><title><![CDATA[k8s两种部署架构，你们是哪一种？为什么面试官会问你你们怎么部署微服务的呢？]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122527576</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122527576</guid><author>stackfuture</author><pubDate>Sun, 16 Jan 2022 19:54:38 +0800</pubDate><description><![CDATA[k8s部署的两种策略干货：domain+slb+ingress+svc+pod 模式gateway+registry+pod 模式通过这篇文章我们可以看出，为啥上篇文章需要讲解网关了，因为这篇文章需要用到它，网关很重要哦。还有一个问题就是面试官老是会问你们的部署架构是怎样的，其实这个问题挺简单的，只不过各大公司业务不同，体量不同还有场景不同选择的部署架构有差别，但是总体而言基于k8s的部署无非就这两种，只不过细节上略有差别，今天主要聊聊这两种最基本的基础部署架构。1. 名词介绍1. ingressingre]]></description><category></category></item><item><title><![CDATA[Go中都是值传递]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122505881</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122505881</guid><author>stackfuture</author><pubDate>Sat, 15 Jan 2022 08:59:41 +0800</pubDate><description><![CDATA[聊聊后端面试那些事 Go中都是值传递我看在技术大群里面有人问我，到底值类型，引用类型以及指针类型有什么区别？为什么别人说函数传参是引用传递或者值传递，有的人说是指针传递？想要彻底搞清楚这个问题，你得先通过表现来理解一下，然后在深入源码理解下你很快就会明白的。所以网上说的有可能都是错误的，大家千万别被误导！我们接下来重点解决函数传递参数到底是值传递还是其他类型传递！三者区别值类型 就是变量赋值的时候将直接获得一个真实的数据副本，请大家再次看清楚，真实的"数据"副本。比如var int a = 10，b:=a.]]></description><category></category></item><item><title><![CDATA[服务稳定性SLA-2015年阿里双十一惨痛的教训]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122488535</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122488535</guid><author>stackfuture</author><pubDate>Fri, 14 Jan 2022 10:20:22 +0800</pubDate><description><![CDATA[聊聊后端面试那些事 服务稳定性618&amp;&amp;双11作为研发，尤其是后端研发，每年在618或者双11的时候压力特别大，他们祈求服务不要出故障，交易能正常进行，而且期望用户体验非常棒而不是卡顿404等。但是有时候就是事与愿违，比如在2015年11月11日傍晚，大部分用户反馈购物失败的情况，负责双11技术保障的阿里云计算总裁胡晓明回应称，零点开始5分钟内巨量的访问涌入，并创建交易、支付，这相当于一次黑客攻击，对全世界任何公司都是挑战。双11前，公司做过大量压力测试，网络繁忙的情况是在预料之内，好在很.]]></description><category></category></item><item><title><![CDATA[聊聊后端面试那些事]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122469390</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122469390</guid><author>stackfuture</author><pubDate>Thu, 13 Jan 2022 11:01:41 +0800</pubDate><description><![CDATA[聊聊后端面试那些事 面试到底要怎么准备面试官心里简历必须真实简历上写的最近的项目必须做到熟悉你掌握的技术必须做到知根知底具备做事的能力简历上没有的软技能态度和心态候选人心里我要刷题 top100？我要准备自我介绍我要熟悉项目我要把数据库相关知识掌握我要把NoSQL相关知识掌握我要把语言层面的知识掌握我要把态度摆端正PK环节面试官问你的问题肯定是你要具备的，但是你具体掌握到什么程度就看你造诣有多深，但是如果问你的问题你确实不知道，那么这个时候你去问下周边小伙伴知不知道，如果不知道那么可能是面试官他想知道你知.]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战[完整]]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122448243</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122448243</guid><author>stackfuture</author><pubDate>Wed, 12 Jan 2022 10:39:20 +0800</pubDate><description><![CDATA[Go微服务架构实战本系列文章主要是针对云原生领域微服务架构的实战，包括网关，k8s，etcd以及grpc等相关技术的应用，同时也会把服务发现与注册，熔断，降级，限流以及分布式锁等加入到系列当中作为补充，课程的最后也会安排分布式链路追踪框架的学习，监控平台的搭建以及灰度发布等技术服务，所以总体来讲，课程范围涉及技术领域较广，知识面比较宽，大家下来各取所需尽量做到熟悉和应用，之后有时间了在研究下源码，乐哉！1. 微服务架构上篇1. grpc技术介绍2. grpc+protobuf+网关实战3. etcd技术介绍]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战 下篇：1. gRPC + Opentracing + Zipkin实现分布式链路追踪系统]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122437138</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122437138</guid><author>stackfuture</author><pubDate>Tue, 11 Jan 2022 17:16:41 +0800</pubDate><description><![CDATA[Go微服务架构实战Go微服务架构实战目录1. 微服务架构上篇1. grpc技术介绍2. grpc+protobuf+网关实战3. etcd技术介绍4. 基于etcd的服务发现与注册5. 基于etcd的分布式锁实战2. 微服务架构中篇1. k8s架构介绍2. 基于k8s的容器化部署3. 基于k8s的Deployment工作负载4. 基于k8s的ingress实战5. 基于ingress和service实现灰度发布6. 常见的服务治理策略3. 微服务架构下篇分布式链路追踪实战干货：什么是APM什么是Opentr]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战 中篇：6. 微服务治理策略]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122429652</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122429652</guid><author>stackfuture</author><pubDate>Tue, 11 Jan 2022 12:35:01 +0800</pubDate><description><![CDATA[Go微服务架构实战Go微服务架构实战目录1. 微服务架构上篇1. grpc技术介绍2. grpc+protobuf+网关实战3. etcd技术介绍4. 基于etcd的服务发现与注册5. 基于etcd的分布式锁实战2. 微服务架构中篇1. k8s架构介绍2. 基于k8s的容器化部署3. 基于k8s的Deployment工作负载4. 基于k8s的ingress实战5. 基于ingress和service实现灰度发布6. 常见的服务治理策略干货：服务容错: 故障转移/快速失败/故障恢复等流量控制：滑动时间窗口/令]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战 中篇：5. k8s基于ingress和service实现金丝雀发布和蓝绿发布]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122407602</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122407602</guid><author>stackfuture</author><pubDate>Mon, 10 Jan 2022 12:07:22 +0800</pubDate><description><![CDATA[Go微服务架构实战Go微服务架构实战目录1. 微服务架构上篇1. grpc技术介绍2. grpc+protobuf+网关实战3. etcd技术介绍4. 基于etcd的服务发现与注册5. 基于etcd的分布式锁实战2. 微服务架构中篇1. k8s架构介绍2. 基于k8s的容器化部署3. 基于k8s的Deployment工作负载4. 基于k8s的ingress实战5. 基于ingress和service实现灰度发布关于灰度发布有好几种方式，比如蓝绿发布，滚动发布以及金丝雀发布。基于它们的表现形式不同，可以在不同]]></description><category></category></item><item><title><![CDATA[Go并发调度进阶-循环调度，不是你理解的死循环]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122392024</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122392024</guid><author>stackfuture</author><pubDate>Sun, 09 Jan 2022 12:21:51 +0800</pubDate><description><![CDATA[Go并发调度进阶3. 循环调度所有的GMP初始化工作都已经完成了，是时候启动运行时调度器了。我们已经知道，当所有准备工作都完成后， 最后一个开始执行的调用就是runtime.mstart了。mstart主要功能：确定执行栈的边界启动mstart1设置退出线程标记osStack=true调用mexit(osStack)退出线程再来看下mstart1:如果当前m并非m0，那么要求绑定p开始调用schedule()开始调度所以我们可以看到调度循环schedule无法返回，因此最后一个mexit目前还不会被执行，因]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战 中篇：4. 基于ingress的限流，路径匹配和重写实战]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122386180</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122386180</guid><author>stackfuture</author><pubDate>Sat, 08 Jan 2022 20:58:46 +0800</pubDate><description><![CDATA[Go微服务架构实战Go微服务架构实战目录1. 微服务架构上篇1. grpc技术介绍2. grpc+protobuf+网关实战3. etcd技术介绍4. 基于etcd的服务发现与注册5. 基于etcd的分布式锁实战2. 微服务架构中篇1. k8s架构介绍2. 基于k8s的容器化部署3. 基于k8s的Deployment工作负载4. 基于k8s的ingress实战到现在为止我们的服务都是跑在集群内部的，为了让集群外部也能访问，那么我们需要让服务外化，但是因为minikube在mac上是网络不通的，所以我们我们直]]></description><category></category></item><item><title><![CDATA[Go并发调度进阶-GMP初始化，最难啃的有时候耐心看完还是很简单的]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122366714</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122366714</guid><author>stackfuture</author><pubDate>Fri, 07 Jan 2022 16:11:12 +0800</pubDate><description><![CDATA[Go并发调度进阶2. GMP初始化1. M的初始化M 只有自旋和非自旋两种状态。自旋的时候，会努力找工作；找不到的时候会进入非自旋状态，之后会休眠，直到有工作需要处理时，被其他工作线程唤醒，又进入自旋状态。//&nbsp;src/runtime/proc.go

func&nbsp;mcommoninit(mp&nbsp;*m,&nbsp;id&nbsp;int64)&nbsp;{
&nbsp;_g_&nbsp;:=&nbsp;getg()
&nbsp;...
&nbsp;lock(&amp;sched.l]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战 中篇：3. 扩缩容、自愈和故障转移、滚动更新以及回退能力]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122340884</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122340884</guid><author>stackfuture</author><pubDate>Thu, 06 Jan 2022 12:22:46 +0800</pubDate><description><![CDATA[Go微服务架构实战Go微服务架构实战目录1. 微服务架构上篇1. grpc技术介绍2. grpc+protobuf+网关实战3. etcd技术介绍4. 基于etcd的服务发现与注册5. 基于etcd的分布式锁实战2. 微服务架构中篇1. k8s架构介绍2. 基于k8s的容器化部署基于k8s的Deployment工作负载主要是利用Deployment资源对象实现的，包括一下功能：多副本集扩缩容自愈和故障转移滚动更新回退能力接下来详细了解下操作过程1. 多副本集deploy.yaml中只需修改一下replica]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战 中篇：2. 基于k8s部署服务和注册中心，验证服务注册和发现]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122315417</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122315417</guid><author>stackfuture</author><pubDate>Wed, 05 Jan 2022 07:58:29 +0800</pubDate><description><![CDATA[Go微服务架构实战本系列文章主要是针对云原生领域微服务架构的实战，包括网关，k8s，etcd以及grpc等相关技术的应用，同时也会把服务发现与注册，熔断，降级，限流以及分布式锁等加入到系列当中作为补充，课程的最后也会安排分布式链路追踪框架的学习，监控平台的搭建以及灰度发布等技术服务，所以总体来讲，课程范围涉及技术领域较广，知识面比较宽，大家下来各取所需尽量做到熟悉和应用，之后有时间了在研究下源码，乐哉！上篇已经完成，大家可以看下，我这里贴出来了，中篇从这周开始陆续为大家产出，因为太耗费精力，所以还望大家多多]]></description><category></category></item><item><title><![CDATA[Go微服务架构实战-中篇 1. k8s架构介绍]]></title><link>https://blog.youkuaiyun.com/stackfuture/article/details/122285453</link><guid>https://blog.youkuaiyun.com/stackfuture/article/details/122285453</guid><author>stackfuture</author><pubDate>Mon, 03 Jan 2022 11:31:31 +0800</pubDate><description><![CDATA[Go微服务架构实战本系列文章主要是针对云原生领域微服务架构的实战，包括网关，k8s，etcd以及grpc等相关技术的应用，同时也会把服务发现与注册，熔断，降级，限流以及分布式锁等加入到系列当中作为补充，课程的最后也会安排分布式链路追踪框架的学习，监控平台的搭建以及灰度发布等技术服务，所以总体来讲，课程范围涉及技术领域较广，知识面比较宽，大家下来各取所需尽量做到熟悉和应用，之后有时间了在研究下源码，乐哉！上篇已经完成，大家可以看下，我这里贴出来了，中篇从这周开始陆续为大家产出，因为太耗费精力，所以还望大家多多]]></description><category></category></item></channel></rss>