@Override public void stop() { if (parent != null) { parent.removeChild(this); } this.memoryUsage.stop(); this.storeUsage.stop(); this.tempUsage.stop(); this.jobSchedulerUsage.stop(); }
private void startActiveMqBroker() throws Exception { this.activeMQBroker = new BrokerService(); this.activeMQBroker.addConnector("stomp://localhost:" + this.port); this.activeMQBroker.setStartAsync(false); this.activeMQBroker.setPersistent(false); this.activeMQBroker.setUseJmx(false); this.activeMQBroker.getSystemUsage().getMemoryUsage().setLimit(1024 * 1024 * 5); this.activeMQBroker.getSystemUsage().getTempUsage().setLimit(1024 * 1024 * 5); this.activeMQBroker.start(); }
public SystemUsage(String name, PersistenceAdapter adapter, PListStore tempStore, JobSchedulerStore jobSchedulerStore) { this.parent = null; this.name = name; this.memoryUsage = new MemoryUsage(name + ":memory"); this.storeUsage = new StoreUsage(name + ":store", adapter); this.tempUsage = new TempUsage(name + ":temp", tempStore); this.jobSchedulerUsage = new JobSchedulerUsage(name + ":jobScheduler", jobSchedulerStore); this.memoryUsage.setExecutor(getExecutor()); this.storeUsage.setExecutor(getExecutor()); this.tempUsage.setExecutor(getExecutor()); }
public void setJobSchedulerUsage(JobSchedulerUsage jobSchedulerUsage) { if (jobSchedulerUsage.getStore() == null) { jobSchedulerUsage.setStore(this.jobSchedulerUsage.getStore()); } if (jobSchedulerUsage.getName() == null) { jobSchedulerUsage.setName(this.jobSchedulerUsage.getName()); } if (parent != null) { jobSchedulerUsage.setParent(parent.jobSchedulerUsage); } this.jobSchedulerUsage = jobSchedulerUsage; this.jobSchedulerUsage.setExecutor(getExecutor()); }
public void setMemoryUsage(MemoryUsage memoryUsage) { if (memoryUsage.getName() == null) { memoryUsage.setName(this.memoryUsage.getName()); } if (parent != null) { memoryUsage.setParent(parent.memoryUsage); } this.memoryUsage = memoryUsage; this.memoryUsage.setExecutor(getExecutor()); }
private boolean isParentFull() { boolean result = false; if (systemUsage != null) { if (systemUsage.getMemoryUsage().getParent() != null) { return systemUsage.getMemoryUsage().getParent().getPercentUsage() >= 100; } } return result; }
public StoreUsage copy() { StoreUsage storeUsage = new StoreUsage(); storeUsage.name = name; storeUsage.parent = parent; storeUsage.total = total; storeUsage.percentLimit = percentLimit; storeUsage.getLimiter().setLimit(getLimiter().getLimit()); return storeUsage; } }
@Override public String toString() { return "Usage(" + getName() + ") percentUsage=" + percentUsage + "%, usage=" + retrieveUsage() + ", limit=" + limiter.getLimit() + ", percentUsageMinDelta=" + percentUsageMinDelta + "%" + (parent != null ? ";Parent:" + parent.toString() : ""); }
@Override public boolean isFull() { return systemUsage != null ? systemUsage.getMemoryUsage().isFull() : false; }
protected int caclPercentUsage() { if (limiter.getLimit() == 0) { return 0; } return (int) ((((retrieveUsage() * 100) / limiter.getLimit()) / percentUsageMinDelta) * percentUsageMinDelta); }
@Override public void run() { if (usage != null) { usage.decreaseUsage(messageSize); } } }
public boolean isSendFailIfNoSpace() { if (sendFailIfNoSpaceExplicitySet || parent == null) { return sendFailIfNoSpace; } else { return parent.isSendFailIfNoSpace(); } }
public StoreUsage(String name, PersistenceAdapter store) { super(null, name, 1.0f); this.store = store; updateLimitBasedOnPercent(); }
public void setStore(JobSchedulerStore store) { this.store = store; onLimitChange(); } }
@Before public void setUp() throws Exception { logger.debug("Setting up before '" + this.testName.getMethodName() + "'"); int port = SocketUtils.findAvailableTcpPort(61613); this.activeMQBroker = new BrokerService(); this.activeMQBroker.addConnector("stomp://127.0.0.1:" + port); this.activeMQBroker.setStartAsync(false); this.activeMQBroker.setPersistent(false); this.activeMQBroker.setUseJmx(false); this.activeMQBroker.getSystemUsage().getMemoryUsage().setLimit(1024 * 1024 * 5); this.activeMQBroker.getSystemUsage().getTempUsage().setLimit(1024 * 1024 * 5); this.activeMQBroker.start(); ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler(); taskScheduler.afterPropertiesSet(); this.client = new ReactorNettyTcpStompClient("127.0.0.1", port); this.client.setMessageConverter(new StringMessageConverter()); this.client.setTaskScheduler(taskScheduler); }
public SystemUsage(SystemUsage parent, String name) { this.parent = parent; this.executor = parent.getExecutor(); this.name = name; this.memoryUsage = new MemoryUsage(parent.memoryUsage, name + ":memory"); this.storeUsage = new StoreUsage(parent.storeUsage, name + ":store"); this.tempUsage = new TempUsage(parent.tempUsage, name + ":temp"); this.jobSchedulerUsage = new JobSchedulerUsage(parent.jobSchedulerUsage, name + ":jobScheduler"); this.memoryUsage.setExecutor(getExecutor()); this.storeUsage.setExecutor(getExecutor()); this.tempUsage.setExecutor(getExecutor()); }
boolean parentHasSpace(int waterMark) { boolean result = true; if (systemUsage != null) { if (systemUsage.getMemoryUsage().getParent() != null) { return systemUsage.getMemoryUsage().getParent().getPercentUsage() <= waterMark; } } return result; }