Program.cs 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. using System;
  2. using System.Threading;
  3. using CLServer.Statistics;
  4. using Sers.Core.CL.MessageDelivery;
  5. using Vit.Core.Module.Log;
  6. namespace DeliveryTest
  7. {
  8. class Program
  9. {
  10. static StatisticsQpsInfo qpsInfo = new StatisticsQpsInfo();
  11. static void Main(string[] args)
  12. {
  13. Logger.PrintToConsole = true;
  14. try
  15. {
  16. if (args != null && args.Length > 0)
  17. {
  18. int.TryParse(args[0], out port);
  19. }
  20. qpsInfo.Start("Msg");
  21. StartServer();
  22. while (true)
  23. {
  24. Thread.Sleep(5000);
  25. }
  26. }
  27. catch (Exception ex)
  28. {
  29. Logger.Error(ex);
  30. }
  31. }
  32. static int port = 4501;
  33. static void StartServer()
  34. {
  35. IDeliveryServer server;
  36. {
  37. var delivery = new Sers.CL.Socket.Iocp.Mode.ThreadWait.DeliveryServer();
  38. //var delivery = new Sers.CL.Socket.Iocp.Mode.Timer.DeliveryServer();
  39. //delivery.receiveBufferSize = 81920;
  40. delivery.port = port;
  41. server = delivery;
  42. }
  43. //server = new Sers.CL.Socket.ThreadWait.DeliveryServer();
  44. //server = new Sers.CL.WebSocket.DeliveryServer();
  45. //server = new Sers.CL.ClrZmq.ThreadWait.DeliveryServer();
  46. //server = new Sers.CL.Zmq.FullDuplex.DeliveryServer();
  47. //server = new Sers.CL.Ipc.SharedMemory.DeliveryServer();
  48. //server = new Sers.CL.Ipc.NamedPipe.DeliveryServer();
  49. server.Conn_OnConnected = (conn) =>
  50. {
  51. Logger.Info("Conn_OnConnected");
  52. conn.OnGetFrame = (conn_, data) =>
  53. {
  54. //Task.Run(() =>
  55. //{
  56. qpsInfo.IncrementRequest();
  57. //Thread.Sleep(1);
  58. //data[0]++;
  59. //data[1] = 5;
  60. var byteData = new Vit.Core.Util.Pipelines.ByteData(data);
  61. conn_.SendFrameAsync(byteData);
  62. //});
  63. };
  64. };
  65. server.Start();
  66. }
  67. }
  68. }