Akka.net分布式数据传输

================================================客户端

 var config = ConfigurationFactory.ParseString(@"

akka {  
    actor {
        provider = ""Akka.Remote.RemoteActorRefProvider, Akka.Remote""
    }
    remote {
        helios.tcp {
            transport-class = ""Akka.Remote.Transport.Helios.HeliosTcpTransport, Akka.Remote""
            applied-adapters = []
            transport-protocol = tcp
            port = 0
            hostname = localhost
        }
    }
}
");
            using (var system = ActorSystem.Create("MyClient", config))
            { 
                while (true)
                {
                    StringBuilder strBuilder = new StringBuilder("akka.tcp://MyServer@localhost:8081/user/"); 
                    var input = Console.ReadLine();
                    if (input.Equals("ss"))
                    {
                        strBuilder.Append("Greeting"); 
                    }
                    else if (input.Equals("hh"))
                    {
                        strBuilder.Append("HelloActor");
                    }
                    var greeting = system.ActorSelection(strBuilder.ToString());
                    greeting.Tell(new GreetingMessage());  
                }

            }

================================================服务端

            var config = ConfigurationFactory.ParseString(@"
akka {  
    actor {
        provider = ""Akka.Remote.RemoteActorRefProvider, Akka.Remote""
    }
    remote {
        helios.tcp {
            transport-class = ""Akka.Remote.Transport.Helios.HeliosTcpTransport, Akka.Remote""
            applied-adapters = []
            transport-protocol = tcp
            port = 8081
            hostname = localhost
        }
    }
}
");
            using (var system = ActorSystem.Create("MyServer", config))
            {
                system.ActorOf<GreetingActor>("Greeting");
                system.ActorOf<HelloActor>("HelloActor");
                Console.ReadLine();
            }


================================================公共部分

public  class HelloActor : ReceiveActor
    {
        public HelloActor()
        {
            Receive<GreetingMessage>(greet => Console.WriteLine("HelloActor"));
        }
    }

public class GreetingActor : ReceiveActor
    {
        public GreetingActor()
        {
            Receive<GreetingMessage>(greet => Console.WriteLine("GreetingActor"));
        }
    }


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值