[jboss-as7-dev] Add Notification support to the domain management API
Heiko Braun
hbraun at redhat.com
Mon Feb 25 11:47:18 EST 2013
Some additional notification types that admins could make use of:
- SERVER_NEEDS_RELOAD
- AUTHENTICATION / USER_LOGGED_ON
- SYSTEM_IS_GOING_TO_SHUTDOWN
- MESSAGE_OF_THE _DAY
I can see the value in these from an administrator point of view. But it raises an interesting question:
Do notification types have different TTL's? (i.e. MOTD)
On Feb 25, 2013, at 2:31 PM, Lukas Krejci <lkrejci at redhat.com> wrote:
> On Monday, February 25, 2013 12:00:11 Heiko Braun wrote:
>> If we intend to provide support for polling it means the notifications need
>> to be kept in memory.
>>
>> - What constraints do apply in this case? (I.e. TTL and MAX notification
>> count?) - How does the design of this approach allow us to transition into
>> a push based mechanism?
>>
>
> I may be wrong but I can't see the server creating thousands of notifications
> per hour (or even per day). These are notifications about configuration changes
> and you don't reconfigure your server every few minutes.
>
> So while TTL and MAX are valid concerns, I don't think it would be a massive
> problem to set them both to Integer.MAX_INT.
>
> An interesting, but possibly more complex to implement, would be the
> suggestion Heiko R. was saying with "clear the notiification queue once client
> reads it". This would possibly require some kind of client registration (so
> that mulitple clients can poll for notifs and don't "steal" them from each
> other by reading them) and possibly some permanent storage for them to survive
> a restart of the server. Essentially notifs would become some kind of config
> change journal. But that may be too much.
>
>> Overall I am not sure a poll based solution adds any value to the current
>> architecture. This is what we already do and it doesn't require any interim
>> format, i.e. we directly poll for the existence of server resources. But
>> maybe I am missing something here?
>>
>
> One benefit I can see is the reduced load on the server. Instead of flooding the
> server with potentially thousands of poll requests (if the client is not
> careful and doesn't spread the requests in time), you only poll for the list
> of notifications.
>
>> Regards, Heiko
>>
>> On Feb 22, 2013, at 6:32 PM, Jeff Mesnil <jmesnil at redhat.com> wrote:
>>> I've updated the doc[1] to focus on the web console use case and the
>>> minimal requirements it has.
>>>
>>> I wrote a simple plain HTTP API (no WebSockets, working with cURL) that
>>> should be enough for the Web console to handle notifications.
>>>
>>> Since it's HTTP only, the console would still have to poll but:
>>>
>>> 1. It will have few well-defined HTTP resources to poll
>>> 2. There is an explicit contract for the notifications instead of
>>> extracting information from the different responses it get from the
>>> server.
>>>
>>> This API should be suitable to http-based clients and when undertow is
>>> available in AS7, we could provide a WebSocket upgrade on its URL
>>> endpoints to push notifications to the browser.
>>>
>>> jeff
> _______________________________________________
> jboss-as7-dev mailing list
> jboss-as7-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-as7-dev/attachments/20130225/c23b7e34/attachment.html
More information about the jboss-as7-dev
mailing list