Использование esper
или nesper
я могу выдавать события либо из среды выполнения непосредственно следующим образом:Есть ли преимущество использования отправителя пользовательских событий против отправителя выполнения
EPRuntime runtime = provider.getEPRuntime();
MyCustomEvent e = new MyCustomEvent("foo");
runtime.sendEvent(order);
или я могу использовать датчик пользовательских событий, как так :
EventSender sender = epService.EPRuntime.GetEventSender("MyCustomEvent");
MyCustomEvent e = new MyCustomEvent("foo");
sender.SendEvent(e);
Я пытался это время, и это выглядит как пользовательский отправитель событий может быть быстрее, хотя это на самом деле не кажется, делает большую разницу в производительности от того, что я видел.
Есть ли веская причина выбрать один метод для другого?
Если я иду со вторым способом пользовательского EventSender
, безопасно ли кэшировать EventSender
Я получаю из среды выполнения, поэтому мне не нужно запрашивать его каждый раз?