本文演示如何用 Microsoft Agent Framework 用 Executor + Workflow(DAG)模式实现 SubAgent(子代理)架构。通过示例代码(来自项目的 txt)展示并发 Fan‑Out/Fan‑In 的实现、消息路由与聚合策略,最后讨论最佳实践与权衡。 假定读者等 ...
前面介绍了《多租户下的系统基础表设计》和《多租户下的ERP系统的仓储管理模块分析设计》都获得读者比较好的反响,非常感谢大家的支持鼓励。有些读者和我沟通反馈,希望看看我如何基于这些设计思路来逐步开展开发工作的,这觉得这也是一个很不错的启发,因此有了继续本篇随笔内容的准备,本篇随笔主要介绍如何基于设计思... ...
问题背景 很多项目不缺日志,缺的是有用的日志。 平时接口跑得顺,大家都觉得日志够用。真到线上出问题,日志的短板会一下子暴露出来。 比如订单接口偶发超时,日志里只剩这么一句: Create order failed for customer 1024, cost 3800ms, trace abc12 ...
在 Microsoft Agent Framework 中,Agent Skills 是一个非常重要但容易被忽略的能力。它可以让你的 Agent 拥有“插件化能力”,甚至可以执行本地脚本(如 Python),实现真正的自动化。 本文结合完整示例,带你从 原理 → 结构 → 实战 → 坑点 全面掌握如 ...
本文介绍如何使用Agent Skills为Microsoft代理框架中的代理提供可重用的领域专业技能包。通过.NET和Python内置技能提供者,代理可以在运行时动态加载所需技能,增强其能力而无需修改核心指令。 Introduction to Agent Skills 您现在可以在Microsoft ...
本文介绍如何使用Microsoft Agent Framework在C#中构建生产级AI代理,涵盖环境设置、内存管理、工具及多代理工作流。本框架旨在替代AutoGen和Semantic Kernel,提供更好的上下文管理和代理协调。 What Is Microsoft Agent Framework ...
前言 GC 的设计里一直有一个很难绕开的矛盾:高吞吐、低延时、低内存占用,通常很难同时做到。 传统做法里,想要更短的停顿,往往要把更多工作搬到并发阶段,甚至让平时的对象访问承担更高成本;想要更高的吞吐量,又往往意味着平时路径成本必须足够低,于是更多工作会堆到回收阶段;想要更低的内存占用,则又需要更积 ...
一、概述 surging 号称微服务引擎,但是每次都依赖于dotnet 命令启动,都需要通过配置文件进行配置,让大家都感到只见其形未见其详,感觉很难上手,对于新人不友好,没有熟悉服务规则配置,比如maxConcurrentRequests,executionTimeoutInMilliseconds ...
此篇主要记录和介绍工作流模块的功能。PS:仅做个人学习用 工作流表单 表单是通过前端代码自定义后,通过界面来进行表单注册。 工作流模板 创建好表单后,可以引用表单创建工作流模板,此处以简单的条件判断流程作为示例。 其中,还有会签功能的节点,展示如下: PS:各个节点均可自定义节点任务,在节点操作完成 ...
Yi.Net是基于.Net6后端框架和传统前端框架开发的平台管理系统。 架构上采用前后端分离的方式,支持分布式部署,开发的核心思想:面向服务、面向对象。(此处说明下:本人是主要做后端开发工作,前端是采用传统开发的前端模式,不是现代化构建环境(webpack、vite)下的前端模式。主要前端框架:el ...
1.概述 今天玩了一下阿里的千问,当我输入surging作者是谁?把我吹捧的非常高,我被它的彩虹屁惊到了,还说我是.net 微服务的“黄埔军校”,说的有理有据,在此把原文贴出来,根据此轮点,我打击其它依靠背景的学院派应该是有这个资格了。 图1 图2 为什么 Surging 被称为“黄埔军校”? ...
从递归到极致优化:树结构构建的性能演进之路 一次简单的代码优化,性能提升 超千倍!本文通过实测数据,揭示树结构构建中隐藏的性能陷阱,并给出最佳实践。 前言 在日常开发中,我们经常需要处理树形结构的数据:组织架构、菜单导航、商品分类、文件目录……这些场景都需要将扁平的数据库记录转换为层级树结构。 ...
本文将从控制台开始,以最简单方式和大家展示如何通过 Angle 将 Skia 和 DirectX 对接。对接之后,可以利用 Angle 的能力,让 Skia 使用到 DirectX 引擎渲染能力 ...
前言 嘿,小伙伴们!最近看到了一个 .NET 8.0 的小项目伪微服务框架,非常适合想要快速搭建小型应用项目或是想要学习.NET 8.0及新的技术,但又不知道从哪里学起的朋友。这个框架可以帮助我们简化开发流程,同时还能适应不断变化的需求。 它虽然简化了很多复杂的微服务特性,但仍保留了关键的微服务理念 ...
死锁的示例 下面就是一个会死锁的示例代码: // 异步死锁示例 - 不使用 TaskScheduler,仅用多个 Task 互相等待 Console.WriteLine(" 多 Task 互相等待死锁 \n"); // 两个任务互相用 .Result 等待对方完成 → 死锁 var tcsA = n ...
再次遇到dotnet的第三方组件问题,就是hangfire的CoreBackgroundJobPerformer会导致死锁,它是作为hagnfire服务端的job执行器的,它非常的关键,是job能够运行的关键,这些库可能读是从很早的dotnetfremework时代移植过来的(我猜测的),同样的存在 ...
引言:一个普遍存在的“坏味道” 如果你在C#项目中看到这样的代码,一定不会感到陌生: public User Login(string username, string password) { var user = FindUser(username); if (user == null) thro ...
本次升级实现了iNeuOS工业互联网操作系统(该系统前端使用VUE3、后端接口使用NET6、关系数据库+时序数据库)从基础工具应用向业务管理应用(能源管理)的增值服务过度,同时可以依靠iNeuOS原有的基础工具扩展能源管理的业务功能。 ...
在家庭以及企业场景下的网络磁盘产品,使用Iscsi均需要对磁盘进行管理。不同Windows版本、安装第三方软件,导致每个C端用户的运行环境不同,对磁盘的管理带来一定的使用干扰 本文介绍下磁盘管理的几种方案以及存在的一些问题 对磁盘管理主要有以下操作入口/方式: Powershell Diskpart ...
前言 在物联网(IoT)蓬勃发展的今天,MQTT 协议已经成为设备通信的事实标准。无论是智能家居、工业自动化还是车联网,MQTT 都扮演着至关重要的角色。今天,我要为大家介绍一个完全使用 C# 实现的高性能 MQTT 库 这个库不仅提供了完整的 MQTT 客户端实现,还包含了一个功能齐全的 Brok ...