博客
关于我
net core 微服务 快速开发框架
阅读量:425 次
发布时间:2019-03-06

本文共 3300 字,大约阅读时间需要 11 分钟。

Dym 分布式开发框架入门指南

什么是 Dym 框架

Dym 是一个支持 .NET Core 2.2 和 .NET Framework 4.6.1 的分布式开发框架。它提供了强大的工具支持,适合构建高性能和可扩展的后台服务。接下来,我们将详细介绍如何运行和配置这个框架。

安装与运行

1.1 安装 Dym Demo

首先,你需要使用 dotnet 运行 Dym 的示例项目。进入项目文件夹 dymDemo\YY.AppCenter\bin\Debug\netcoreapp2.2,运行以下命令:

dotnet AppCenter.dll

默认情况下,程序会在 6660 端口上监听。如果你看到类似下面的输出,说明程序已经成功运行:

(Assembly loaded: dym.Rpc.Center) Bootstrap v1.0.0.0

1.2 服务配置

在 dym.config 文件中,配置你的服务设置。一个基本的配置文件可能如下:

6660
120000

1.3 启动服务

接下来,进入 dymDemo\YY.Server\bin\Debug\netcoreapp2.2 文件夹,运行命令:

dotnet YY.Server.dll

默认情况下,服务会在 6659 端口上监听。如果你看到以下信息,说明服务已经成功注册到注册中心:

(Assembly loaded: dym.Rpc.Server) Bootstrap v1.0.0.0

业务开发

2.1 服务启动配置

创建一个新的 Plug 类,继承自 IPlugsConfigurationBootstrap。在 ConfigurationBootstrap 方法中,添加自定义的业务逻辑配置。

using System;using dym.EngineData;namespace dym.Plugs.YYTestService{    public class YYTestBootstrap : IPlugsConfigurationBootstrap    {        public void ConfigurationBootstrap()        {            // 服务启动时会自动调用此方法            // 可以用来加载插件配置        }        public void PreConfigurationBootstrap()        {            // Ioc 注入之前执行        }    }}

2.2 业务实现

在同一个命名空间中,添加一个新的模块类。以下是一个简单的示例:

using dym.EngineData;using System;using System.Collections.Generic;namespace dym.Plugs.YYTestService{    public class MyFirstModule : BaseModule    {        public MyFirstModule()        {        }        public ActionResult MyT()        {            var xx = RequestString("XX");            Console.WriteLine($"来自客户端的消息:{xx}");            return new ActionResult(true, new { Msg = "I from dym.Plugs.YYTestService MyFirstModule!" }, null, xx);        }    }}

客户端测试

3.1 启动测试客户端

进入 dymDemo\YY.Client\bin\Debug\netcoreapp2.2 文件夹,运行命令:

dotnet YY.Client.dll

3.2 客户端配置

在客户端代码中,配置默认参数如下:

using System;using dym.Rpc.Client;namespace YY.Client{    class Program    {        static void Main(string[] args)        {            DefaultConfigManager.SetDefaultConfiguration("YY.Client", "127.0.0.1", 6660, false);                        while (true)            {                Console.WriteLine("请输入一个消息然后回车发送到服务器:");                var inputMsg = Console.ReadLine();                                var input = new InputTest()                {                    channel = "dym.Plugs.YYTest",                    router = "MyFirst",                    method = "MyT",                    XX = $"{inputMsg}参数1"                };                                var rltStr = Connector.BrokerDns(input);                Console.WriteLine(rltStr);                                Console.WriteLine("-----------------------------------------------------------------------------");                                var inputYYTest = new InputTest()                {                    channel = "dym.Plugs.YYTest",                    router = "MySecond",                    method = "MyT",                    XX = $"{inputMsg}参数2"                };                                var rltStrYY = Connector.BrokerDns(inputYYTest);                Console.WriteLine(rltStrYY);                                goto Restart;            }        }    }        public class InputTest : InputDtoBase    {        public string XX { get; set; }    }}

3.3 调用服务

通过客户端调用服务的方法,测试分布式框架的运行效果。输出结果会显示在控制台中。

总结

通过以上步骤,你已经成功配置并运行了 Dym 分布式开发框架。接下来可以深入探索高级功能,如负载均衡、事件总线优化以及 CQRS 模式的应用。

转载地址:http://ogfuz.baihongyu.com/

你可能感兴趣的文章
nacos集群搭建
查看>>
Nessus漏洞扫描教程之配置Nessus
查看>>
Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
查看>>
Netpas:不一样的SD-WAN+ 保障网络通讯品质
查看>>
Netty WebSocket客户端
查看>>
Netty工作笔记0011---Channel应用案例2
查看>>
Netty工作笔记0014---Buffer类型化和只读
查看>>
Netty工作笔记0050---Netty核心模块1
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty核心模块组件
查看>>
Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
查看>>
Netty源码—2.Reactor线程模型一
查看>>
Netty源码—4.客户端接入流程一
查看>>
Netty源码—4.客户端接入流程二
查看>>
Netty源码—5.Pipeline和Handler一
查看>>
Netty源码—6.ByteBuf原理二
查看>>
Netty源码—7.ByteBuf原理三
查看>>
Netty源码—7.ByteBuf原理四
查看>>