static void Main(string[] args) { var service = "7500"; var network = ";239.255.0.1"; var daemon = "tcp:7500"; var subject = "TEST.Perf"; var sendMessages = 0; TIBCO.Rendezvous.Environment.Open(); var transport = new NetTransport(service, network, daemon); var watch = new Stopwatch(); watch.Start(); while (true) { var message = new Message { SendSubject = subject }; message.AddField("body", messageBody); transport.Send(message); sendMessages += 1; if (watch.ElapsedMilliseconds > 1000) { Console.WriteLine("{0} messages per second sent.", sendMessages); watch.Restart(); sendMessages = 0; } } }
public void OpenTibManager(string subject, string service, string network, string daemon) { try { this.setTibDll(); this._subject = subject; TIBCO.Rendezvous.Environment.Open(); Enable = true; transport = new NetTransport(service, network, daemon); } catch (RendezvousException ex) { ex.ToString(); try { transport = new NetTransport("", "", ""); //WriteLog("OpenTibManager(2)", ex.ToString()); } catch (RendezvousException e) { this.ERROR_MESSAGE = e.Message; } } // Create Queue try { queue = new TIBCO.Rendezvous.Queue(); } catch (RendezvousException ex) { this.ERROR_MESSAGE = ex.Message; } // Create Dispatcher try { dispatcher = new Dispatcher(queue); } catch (RendezvousException ex) { this.ERROR_MESSAGE = ex.Message; } try { CreateTibManager(); } catch (Exception ex) { ex.ToString(); } }
private string Connect(string listenSubject) { string result = "Connect Success"; if (string.IsNullOrEmpty(listenSubject)) { return("Set Listen or Target Subject First"); } if (!string.IsNullOrEmpty(setEncoding)) { Encoding encoding = System.Text.Encoding.GetEncoding(setEncoding); TIBCO.Rendezvous.Environment.StringEncoding = encoding; } TIBCO.Rendezvous.Environment.Open(); //Service,network,daemon should be B2MES netTtransport = new NetTransport(service, network, daemon); queue = new TIBCO.Rendezvous.Queue(); dispatcher = new Dispatcher(queue); //listen subject should be B2MES listener = new Listener(queue, netTtransport, listenSubject, null); listener.MessageReceived += Listener_MessageReceived; return(result); }
private void btn_Connect_Click(object sender, EventArgs e) { try { if (btn_Connect.Text == "DisConnect") { this.StopConnecting(); this.btn_Connect.Text = "Connect RV"; //isRvConnected = false; return; } if (string.IsNullOrEmpty(listenSubject)) { MessageBox.Show("Set Listen or Target Subject First", "Error"); return; } if (!string.IsNullOrEmpty(setEncoding)) { Encoding encoding = System.Text.Encoding.GetEncoding(setEncoding); TIBCO.Rendezvous.Environment.StringEncoding = encoding; } TIBCO.Rendezvous.Environment.Open(); //Service,network,daemon should be AMA netTtransport = new NetTransport(service, network, daemon); queue = new TIBCO.Rendezvous.Queue(); dispatcher = new Dispatcher(queue); //listen subject should be AMA listener = new Listener(queue, netTtransport, listenSubject, null); listener.MessageReceived += Listener_MessageReceived; this.btn_Connect.Text = "DisConnect"; //isRvConnected = true; } catch (Exception ex) { throw ex; } }
private void Start(object sender, EventArgs eventArgs) { Task.Factory.StartNew(Dequeue); timer = new System.Timers.Timer(1000); timer.Elapsed += timer_Elapsed; timer.Start(); var service = "7500"; var network = ";239.255.0.1"; var daemon = "tcp:7500"; var subject = "TEST.Perf"; receivedMessages = 0; log.InfoFormat("Connecting to TIBCO. Daemon: {0} service: {1}, network: {2}, subject {3}", daemon, service, network, subject); try { Environment.Open(); this.transport = new NetTransport(service, network, daemon); this.listener = new Listener(Queue.Default, OnMessageReceived, transport, subject, null); this.dispacher = new Dispatcher(listener.Queue); log.Info("Connected to TIBCO successfully"); log.Info("Waiting for messages"); dispacher.Join(); } catch (Exception exception) { log.Error("Error connecting to TIBCO", exception); this.Stop(this, EventArgs.Empty); } }
/// <inheridoc/> public void Connect() { if (tbQueue == null) // 只有第一次才去建立物件 { tbQueue = new Queue(); try { NetTransport nt = new NetTransport(Service, Network, Daemon); nt.Description = Description; tbTransport = nt; } catch (Exception exp) { if (tbQueue != null) { tbQueue.Destroy(); tbQueue = null; } throw; } } // 啟動執行緒去派送Tibco Queue tQueue = new Thread(QueueDispatch); tQueue.IsBackground = true; tQueue.Start(); }