<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fenwei88的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/fenwei88</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fenwei88]]></copyright><item><title><![CDATA[SEO方法论]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/162733682</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/162733682</guid><author>fenwei88</author><pubDate>Thu, 09 Jul 2026 16:11:01 +0800</pubDate><description><![CDATA[文章摘要（150字）： 近期SEO领域多篇文章揭示行业核心问题：外链建设中未被索引的链接传递价值为零（文章一），SEO孤化需结合用户体验与搜索引擎需求（文章二），流量热潮背后多为品牌短期营销行为（文章三）。Google已采用PRNS算法取代传统PageRank（文章四），而标准化SEO流程被证明无效（文章五）。GEO中的付费品牌提及实为变相黑帽（文章六），公众号SEO建议多存在误区（文章七）。总体趋势显示：搜索引擎优化正从技术操作转向实体价值建设，单纯的外链和内容策略已难以奏效，需要更系统的专业知识与差异化]]></description><category></category></item><item><title><![CDATA[阿里股价一月上涨50%有感]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/145712067</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/145712067</guid><author>fenwei88</author><pubDate>Tue, 18 Feb 2025 18:20:47 +0800</pubDate><description><![CDATA[但需警惕开源模式的商业化陷阱——RedHat的财报显示，开源业务净利润率通常低于15%，如何平衡社区贡献与商业变现，将是Qwen模型持续领先的关键考验。阿里效仿贝佐斯"先做再说"的长期主义，承受两年战略沉默期的估值压制，本质是积累战略模糊性优势。IDC数据显示，阿里云在亚太市场34%的份额为其提供了天然的AI试验场，这是AWS早期不具备的生态优势。对比张勇时代"商业操作系统"的泛化战略，现阶段的聚焦需要更强大的组织控制力。苹果合作的战略价值：不同于表面的技术合作，实质是构建符合中国监管要求的AI安全框架。]]></description><category></category></item><item><title><![CDATA[Avive World公链重磅来袭CORE模式，感觉还不错，抓紧布局！]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/130625769</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/130625769</guid><author>fenwei88</author><pubDate>Thu, 11 May 2023 16:52:18 +0800</pubDate><description><![CDATA[另外，根据 Vitalik Buterin 对现有 zkSNARK 技术的分类，AVIVE 属于第四种类型（type4），证明时间非常快。AVIVE 是基于以太坊的 L2 扩展解决方案，它利用了 zkSNARK 技术。因为zkRollup技术的实现，保证了从L2到L1提交的速度和可靠性。AVIVE将降低智能合约的开发门槛，让更多非Solid技能的工程师参与开发，降低技术门槛。1.进入网站后，第一栏填写QQ邮箱，第二栏填写验证码（这个是注册账号的）2.苹果的点APP应用商店，需要一个海外苹果ID。]]></description><category></category></item><item><title><![CDATA[Javascript闭包的作用和示例]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/121244358</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/121244358</guid><author>fenwei88</author><pubDate>Wed, 10 Nov 2021 11:10:23 +0800</pubDate><description><![CDATA[闭包是JavaScript最重要的特性之一，也是全栈/前端/JS面试的考点。
那闭包究竟该如何理解呢？

闭包函数的判断和作用

闭包（closure）是Javascript语言的一个难点，也是它的特色，很多高级应用都要依靠闭包实现。
那如何判断函数是一个闭包呢？接下来我会配合一些具体的例子来对闭包问题做讲解。
首先问下大家，这个G函数是否是一个闭包呢?





Copy

const F = function A(){ return function B(){ return function C(){ ]]></description><category></category></item><item><title><![CDATA[Flink SQL 详细剖析大数据应用]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/121162606</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/121162606</guid><author>fenwei88</author><pubDate>Fri, 05 Nov 2021 14:36:44 +0800</pubDate><description><![CDATA[Flink SQL 是 Flink 实时计算为简化计算模型，降低用户使用实时计算门槛而设计的一套符合标准 SQL 语义的开发语言。
自 2015 年开始，阿里巴巴开始调研开源流计算引擎，最终决定基于 Flink 打造新一代计算引擎，针对 Flink 存在的不足进行优化和改进，并且在 2019 年初将最终代码开源，也就是我们熟知的 Blink。Blink 在原来的 Flink 基础上最显著的一个贡献就是 Flink SQL 的实现。
Flink SQL 是面向用户的 API 层，在我们传统的流式计算领域，比如]]></description><category></category></item><item><title><![CDATA[针对资源限制类问题提出四个解决方案]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/121103422</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/121103422</guid><author>fenwei88</author><pubDate>Tue, 02 Nov 2021 16:32:59 +0800</pubDate><description><![CDATA[32位无符号整数的范围是0~4,294,967,295(即：0 ~ 2^32 - 1）现在有一个正好包含40亿个无符号整数的文件，可以使用最多1GB的内存，怎么找到出现次数最多的数？
首先，需要考虑最差情况，假设40亿个数都不一样。
如果使用Hash表，key表示其中的某个数，value表示出现的次数，由于
40亿 &gt; Integer.MAX_VALUE
所以Hash表的key和value都需要long类型来存，
Hash表中的每条记录至少需要
8Byte + 8Byte = 16Byte
最差情况，]]></description><category></category></item><item><title><![CDATA[神经网络训练的影响之一：Batch Size]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/121081277</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/121081277</guid><author>fenwei88</author><pubDate>Mon, 01 Nov 2021 15:32:31 +0800</pubDate><description><![CDATA[在本文中，我们试图更好地理解批量大小对训练神经网络的影响。具体而言，我们将涵盖以下内容：
什么是Batch Size？
为什么Batch Size很重要？
小批量和大批量如何凭经验执行？
为什么大批量往往性能更差，如何缩小性能差距？
什么是Batch Size？
训练神经网络以最小化以下形式的损失函数：
​
点击并拖拽以移动
theta 代表模型参数
m 是训练数据样本的数量
i 的每个值代表一个单一的训练数据样本
J_i 表示应用于单个训练样本的损失函数
通常，这是使用梯度下降来完成的，它计算损失函数相对]]></description><category></category></item><item><title><![CDATA[单测书写返回值为空应该怎么处理]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/121033713</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/121033713</guid><author>fenwei88</author><pubDate>Fri, 29 Oct 2021 14:15:39 +0800</pubDate><description><![CDATA[背景
作为开发人员，在代码交付QA前，为了保证交付质量和代码正确性，一般对代码进行单元测试。单测一般由Mock和断言两部分组成，大部分情况下，我们会针对要测试类的成员对象方法调用的返回值进行Mock，然后通过断言去判断方法的逻辑是否符合预期。但是一些情况下，我们会发现一些代码的返回值是Void这样的话我们便无法根据返回值进行断言操作，此外还有一些方法可能含有中途返回的Case即在某些情况下直接返回了，不执行接下来的逻辑，这样的也无法直接通过断言工具去判断方法逻辑的准确性。这时候，我们就需要用到Mock框架的]]></description><category></category></item><item><title><![CDATA[Golang错误处理演示二三]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/121029091</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/121029091</guid><author>fenwei88</author><pubDate>Fri, 29 Oct 2021 10:08:24 +0800</pubDate><description><![CDATA[在实际工程项目中，总是通过程序的错误信息快速定位问题，但是又不希望错误处理代码写的冗余而又啰嗦。Go语言没有提供像Java、C#语言中的try…catch异常处理方式，而是通过函数返回值逐层往上抛。这种设计，鼓励在代码中显式的检查错误，而非忽略错误，好处就是避免漏掉本应处理的错误。但是带来一个弊端，让代码冗余。
什么是错误
错误指的是可能出现问题的地方出现了问题。如打开一个文件时失败，这种情况是在意料之中的 。
而异常指的是不应该出现问题的地方出现了问题。比如引用了空指针，这种情况在在意料之外的。可见，错误]]></description><category></category></item><item><title><![CDATA[人类存储技术发展二三事]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/120998200</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/120998200</guid><author>fenwei88</author><pubDate>Wed, 27 Oct 2021 17:47:49 +0800</pubDate><description><![CDATA[一直想写一下存储的发展，从用乌龟壳记录文字到我们造出来纸笔书写语言这其中有无数人在推动文明的发展。汉语或者英语都是文化的延续，最终的目的是让人读懂。如何将这些文化存储起来的问题，从龟壳，竹简，纸到如今的电子化设备每一个记录工具的发展都是一段有趣的故事。我们一起走进存储的世界。
从保存声音开始#
发条音乐盒#
每一个孩子的幼年都离不开一个发条音乐盒，妈妈哄睡觉的神器。严格来说发条音乐盒并不属于存储的范畴，拿到这里来说，是因为这个工具在孩童时会让我们以为音乐盒里存储了一首歌。
音乐盒的组成有最重要的3个部分：
]]></description><category></category></item><item><title><![CDATA[时效性解读]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/112579302</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/112579302</guid><author>fenwei88</author><pubDate>Wed, 13 Jan 2021 17:53:27 +0800</pubDate><description><![CDATA[一：什么是时效性

1。时效性是指用户对搜索结果新旧程度的感知

2。时效性的重要性

对于用户来说：在满足需求的前提下，用户天然希望获得相对新鲜的资源。

对于开发者来说：持续生产时效性高的优质内容，有利于获得更多内容分发机会。

3。时效性内容的分类：

受时间影响较大的内容（比如新闻事件、周期性更新的资源和持续更新的资源&gt;天气预报/第63届格莱美获奖名单）

比较稳定的内容（固定答案、长期不变的资源、更新已完结或明确指向的资源&gt;甄嬛传70级已完结/通州人民政府所在地）

二：时间因子

1]]></description><category></category></item><item><title><![CDATA[梯度消失和梯度爆炸及解决方案]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/109219039</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/109219039</guid><author>fenwei88</author><pubDate>Thu, 22 Oct 2020 11:47:33 +0800</pubDate><description><![CDATA[梯度在神经网络中的作用#

在谈梯度消失和梯度爆炸的问题之前，我们先来考虑一下为什么我们要利用梯度，同时铺垫一些公式，以便于后面的理解。

存在梯度消失和梯度爆炸问题的根本原因就是我们在深度神网络中利用反向传播的思想来进行权重的更新。即根据损失函数计算出的误差，然后通过梯度反向传播来减小误差、更新权重。

我们假设，存在一个如图所示的简单神经网络，我们可以得到相关的公式如右侧所示：



其中函数 g 是激活函数，c 是偏置值，t 是目标值，E 是损失函数，这里利用的是平方误差损失函数。我们可以很清晰的看出]]></description><category></category></item><item><title><![CDATA[项目开发使用设计模式，开发er直呼内行]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/108677828</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/108677828</guid><author>fenwei88</author><pubDate>Sat, 19 Sep 2020 10:31:26 +0800</pubDate><description><![CDATA[一切抛开业务的设计，都是扯淡！在项目中有个我们会对多个接口进行多业务逻辑判断，项目开始工期紧，所以先以实现功能为主，最近打算优化一番，一开始的代码是这样的


public void checkProjectAdd(List&lt;OrderDetail&gt; list) {
        if (!CollectionUtils.isEmpty(list)) {
            orderService.check(list);
            stockService.check(l]]></description><category></category></item><item><title><![CDATA[百度参数详解]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/108463797</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/108463797</guid><author>fenwei88</author><pubDate>Tue, 08 Sep 2020 10:38:29 +0800</pubDate><description><![CDATA[https://www.baidu.com/s?ie=utf-8&amp;f=8&amp;rsv_bp=1&amp;rsv_idx=2&amp;tn=baiduhome_pg&amp;wd=java&amp;rsv_spt=1&amp;oq=java&amp;rsv_pq=9ae87b9e0000af9a&amp;rsv_t=64a2xLPgOIqVeiuTYMJ2vghLIMU2amOkhpFAUsNeIXZ6aMAmwitsrebiPa%2BGy1E8WWZa&amp;rqlang=cn&amp;rsv]]></description><category></category></item><item><title><![CDATA[各大搜索引擎下拉获取]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/108342381</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/108342381</guid><author>fenwei88</author><pubDate>Tue, 01 Sep 2020 15:09:42 +0800</pubDate><description><![CDATA[提示：URL中的 #content# 为搜索的 关键字



1.谷歌（Google）



           http://suggestqueries.google.com/complete/search?client=youtube&amp;q=#content#&amp;jsonp=window.google.ac.h



callback：window.google.ac.h




window.google.ac.h(["关键字",[["关键字",0]...]]></description><category></category></item><item><title><![CDATA[搜索引擎索引系统概述]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/108264032</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/108264032</guid><author>fenwei88</author><pubDate>Thu, 27 Aug 2020 16:43:58 +0800</pubDate><description><![CDATA[众所周知，搜索引擎的主要工作过程包括：抓取、存储、页面分析、索引、检索等几个主要过程。上个博文我们主要介绍了部分抓取存储环节中的内容，此章简要介绍一下索引系统。

在以亿为单位的网页库中查找特定的某些关键词犹如大海里面捞针，也许一定的时间内可以完成查找，但是用户等不起，从用户体验角度我们必须在毫秒级别给予用户满意的结果，否则用户只能流失。怎样才能达到这种要求呢？

如果能知道用户查找的关键词（query切词后）都出现在哪些页面中，那么用户检索的处理过程即可以想象为包含了query中切词后不同部分的页面集合求]]></description><category></category></item><item><title><![CDATA[UWP开发教程之通过Radio控制蓝牙和wifi]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/107929925</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/107929925</guid><author>fenwei88</author><pubDate>Tue, 11 Aug 2020 10:40:40 +0800</pubDate><description><![CDATA[在Windows 10以前，想要控制Bluetooth，WiFi等功能，那麻烦大了。得操作ManagementBaseObject，ManagementEventWatcher 等一系列WMI提供的API，写出来的代码又臭又长。其间还夹着复杂的WMI query字符串，十分难用。

升级到Windows 10后，我们通过Windows.Devices.Radios.Radio可以方便的获取控制Bluetooth和WiFi的对象。


var radios = await Radio.GetRadiosAsy]]></description><category></category></item><item><title><![CDATA[特征向量中的NLU意图识别流程及应用]]></title><link>https://blog.youkuaiyun.com/fenwei88/article/details/107912838</link><guid>https://blog.youkuaiyun.com/fenwei88/article/details/107912838</guid><author>fenwei88</author><pubDate>Mon, 10 Aug 2020 14:46:48 +0800</pubDate><description><![CDATA[NLU意图识别的流程说明

基于智能问答的业务流程，所谓的NLU意图识别就是针对已知的训练语料(如语料格式为(x,y)(x,y)格式的元组列表，其中xx为训练语料，yy为期望输出类别或者称为意图)采用选定的算法构建一个模型，而后基于构建的模型对未知的文本进行分类。流程梳理如下：

准备训练数据，按照固定的格式进行；
	抽取所需要的特征，形成特征向量；
	抽取的特征向量与对应的期望输出（也就是目标label）一起输入到机器学习算法中，训练出一个预测模型；
	对新到的数据采取同样的特征抽取，得到用于预测的特征向]]></description><category></category></item></channel></rss>