第三章--一觉醒来全球计算机水平下降一万倍,本是黑马程序员出身的我一越成为万人之上
天道裁决的红色光柱如同一柄审判之剑,将林凡牢牢锁定。那股名为“抹杀”的意志冰冷无情,仿佛要将他从世界的“根目录”中彻底删除,不留一丝痕迹。 周围的空气凝固了,时间都仿佛被拖慢。王经理直接被这股威压震得翻了白眼,昏死过去。尤雨溪和丹·阿布拉莫夫更是脸色煞白,他们体内的Vue和React道韵,在这至高无上的W3C规则之力面前,就像两个还没上线的H5页面,渺小而不堪一击。 “是‘天道防火墙’!”尤雨溪骇然道,“W3C议会竟然把针对上古魔神的最高防御机制给启动了!” “He is going to be garbage collected!(他要被当成垃圾回收了!)”丹·阿布拉莫夫绝望地喊道。他们想上前帮忙,却发现自己的身体根本动弹不得,在“天道”面前,任何框架的“方法”都失去了效果,变成了undefined。 林凡大脑一片空白。 完犊子了!装逼装成世界公敌了!这比写了个while(true)还刺激! 抹杀的意志已经开始侵蚀他的存在,他感觉自己的记忆正在被格式化,身体正在被像素化。就在这千钧一发之际,一个深埋在他记忆底层,被无数次996和产品经理的无理需求所掩盖的知识点,如同黑暗中的一道...
第二章--一觉醒来全球计算机水平下降一万倍,本是黑马程序员出身的我一越成为万人之上
$("#id").show() 这行代码,如同一句用宇宙中最古老、最蛮荒的语言念出的禁忌咒语。 它出现的一瞬间,整个世界仿佛被按下了静音键。风停了,云滞了,尤雨溪和丹·阿布拉莫夫之间那剑拔弩张的“道韵”对撞,瞬间烟消云散,仿佛从未存在过。 那股从林凡身上冲天而起的气息,并非Vue的优雅灵动,也非React的霸道凌厉。它不带任何色彩,是一种混沌、原始、野蛮,甚至有些“脏”的力量。它像是未经规划的野蛮生长,不讲道理,不循章法,唯一的信条就是——解决问题。 尤雨溪如遭雷击,蹬蹬蹬连退三步,脸上血色尽褪。他失神地望着屏幕上那个美元符号,仿佛看到了什么世间最恐怖的景象:“这……这是……上古禁术!直接操控‘世界之树’(DOM Tree)的根基……无视‘虚拟道体’(Virtual DOM)的守护,这……这是魔道!” “噗通!”一声,丹·阿布拉莫夫脚下那柄由JSX构成的飞剑,光芒瞬间暗淡,竟承受不住这股原始的威压,化作一地零散的<div />标签,摔了个七零八落。他本人更是狼狈地跌坐在地,指着林凡,嘴唇哆嗦,半天说不出一句完整的话:“Selector… Uncha...
一觉醒来全球计算机水平下降一万倍,本是黑马程序员出身的我一越成为万人之上
就在Vue宗主尤雨溪那句“逆天骄子”的感慨还在办公室的空气中回荡时,整个软通动力外包基地的上空,风云突变! 原本明媚的日光被一股无形的气息所遮蔽,天空仿佛被一层巨大的DOM树的阴影覆盖。所有程序员的心头都涌上一股莫名的压抑,仿佛……仿佛遇到了一个无法解决的生产环境BUG! 林凡的直属领导,那个曾经因为他写出一个嵌套三层的for循环而骂他“性能杀手”的项目经理王哥,此刻正哆哆嗦嗦地端着一杯水,想递给林凡,手却抖得像开了80个线程在跑一个死循环。 “林……林大师,”王哥的声音带着哭腔,仿佛看到了救世主,“您刚才那一手‘div居中’,简直是神技!是真正的‘HTML布局大道’啊!我为我曾经的愚昧向您道歉!我检讨!我不该搞什么敏捷开发,什么每日站会,那都是奇技淫巧,是旁门左道!只有您这‘div’,才是大道至简,返璞归真!” 林凡嘴角抽搐。 大哥,我就是写了个 text-align: center,你这感悟是不是太多了点?还上升到哲学高度了? 就在这时,办公室那扇被行政贴了“随手关门”的玻璃门,无风自开! 一道身影,背负双手,踏空……不,是踏着一个悬浮的平衡车,缓缓飘了进来。 来人身穿一件印...
360归档
var camera, scene, renderer;
var isUserInteracting = false,
onMouseDownMouseX = 0, onMouseDownMouseY = 0,
lon = 0, onMouseDownLon = 0,
lat = 0, onMouseDownLat = 0,
phi = 0, theta = 0;
init();
animate();
function init() {
var container, mesh;
container = document.getElementById('panoview958');
var width = container.style.width;
camera = new THREE.PerspectiveCamera(75, 2, 1, 1000);
c...
A2A协议剖析
继AI MCP协议之后,Google又提出了一个新协议,A2A,全称为Agent-to-Agent,他允许一个Agent调用另一个Agent。 简单使用 在官方A2A文档中,提供的Python和NodeJS的代码,本篇文章中使用NodeJS作为演示。 拉取官方示例代码,主要需要这两个文件夹的代码 编写服务端代码,其实就是包装一个Agent 我们需要new A2AServer创建一个A2A的服务端,他有两个入参TaskHandler和options 对于TaskHandler 这里不多说关于编程语言,在这个方法定义里你需要 确认当前Agent状态并且告诉taskStore来传递给客户端 实现Agent 编写客户端代码 我们需要new A2AClient创建一个A2A的客户端,他需要一个serverUrl,也就是服务端的地址 通过/.well-known/agent.json获取到服务端Agent的能力,这里返回的信息就是在服务端的card中定义的信息 通过client.sendTaskSubscribe调用服务端Agent sendTaskSubscribe...
SpringAI + RagFlow的火花
SpringAI + RagFlow的火花 嗨嗨嗨,时隔多日,喵喵又来更新了,为什么过了这么久才来补上SpringAI的Rag捏,因为项目更改方向了,用DIFY来构建智能体,操作确实简单,但是拓展上还是有一些局限的,所以到现在才来更新,这次更新直接上硬核的,两个不同的框架如何兼容 首先,RagFlow是什么,RAGFlow 是一款基于深度文档理解构建的开源 RAG(Retrieval-Augmented Generation)引擎。RAGFlow 可以为各种规模的企业及个人提供一套精简的 RAG 工作流程,结合大语言模型(LLM)针对用户各类不同的复杂格式数据提供可靠的问 答以及有理有据的引用。 本文用到的仅限于使用其中的知识库功能 开始 SpringAI添加Rag功能 根据SpringAI的官方文档,我是用ES作为Rag驱动的向量数据库 添加依赖 <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-elasti...
SpringAI 从0.5到1
SpringAI 从0.5到1 为什么是从0.5到1呢,因为Ollama的过程我就不再赘述,网上的教程也很多,本篇将使用Ollama+SpringAI进行叙述。 开始 创建一个SpringAI项目 你可以使用SpringIO的QuickStart,我这里贴出我的Pom(主要的一些东西) <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-webflux</artifactId></dependency><dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-ollama-spring-boot-starter</artifactId></dependency><dependency&...
WebFlux踩坑实录
WebFlux踩坑实录 从WebMVC升级到WebFlux之后有一些东西都不能按照之前的思维来做 如何从MVC到Flux 去除 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency> 添加 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-webflux</artifactId></dependency> 转到Flux之后你需要知道的事情 响应式编程,需要一个订阅,你的流才能流动。 Flux响应式编程,可以理解为全走了异步线程池,所以你的代码需要返回一个Mono或者Flux。 什么是Mono,...
FinOps实践--OptScale从0到1
什么是FinOps FinOps 是一种用于优化云资源使用和成本管理的实践。它通过监控、分析和优化云资源的使用,帮助企业降低成本并提高效率。 什么是OptScale OptScale 是基于 Kubernetes 的云原生监控和成本管理工具。它可以帮助企业监控云资源的使用情况,并提供成本分析和优化建议。 部署 OptScale 部署前注意 一定要遵循官方文档使用Ubuntu进行部署,使用CentOS部署会绝对失败,因为官方的部署程序中很多都是用Ubuntu的内部命令 需要准备一台可以连接外网的机器,因为部署过程中需要下载很多东西 配置一定要高最低配8c16g,推荐16c32g 开始部署 环境准备 安装基础依赖 # 安装基础依赖sudo apt update; sudo apt install python3-pip sshpass git python3.9-venv python3.9-dev python3.9 -y 克隆仓库 git clone https://github.com/hystax/optscale.git 进入部署目录 cd optsc...
Mvnd高速打包
背景 我司使用的是Java8+Maven3.6.3 为什么要使用mvnd来进行打包,因为我们的项目在进行整合之后,module的数量来到了59个,使用Intel® Core™ i9-9980HK CPU @ 2.40GHz 64GRAM 来进行打包还需要至少2min的时间,使用公司的打包服务器需要10min,已经成为了痛点 首先安装Maven-mvnd brew install mvndaemon/homebrew-mvnd/mvnd 安装完成之后查看是否成功 mvnd -version 使用mvnd进行打包,与原生mvn的命令用法是相同的,不过是将mvn变为了mvnd mvnd clean package -Dmaven.test.skip=true 如何使用IDEA集成mvnd呢?有开发用户已经给IDEA提出过,是否可以将mvnd配置在IDEA中,让开发人员原生使用,但是IDEA的官方明确回复maven已经达到原生支持,可以使用另外的shell插件来实现maven的编译。 简而言之就是一键运行脚本,哈哈有点鸡肋 使用原生maven 使用mvnd 踩坑 第一个问题...









