Liferay JMX beans - liferay

I need to plan monitoring of Liferay 6.1 running on Glassfish 3.1.2. So far we determined Glassfish mbans we want to monitor.
The question is:
does Liferay provide any MBeans in addittion to those provided by app server (liferay specific mbans) ?
if so, are there any industry standard liferay mbeans that are worth to monitor in general ?
References to existing Liferay docs are welcome (actually may suffice for the whole answer). So far I could not find anything in official docs.
Thanks !

I doubt that you'll find "industry standard" mbeans, as Liferay is a platform that is used in many completely different ways: E.g. you might want to monitor the MessageBoards caches if you have a forum-like installation that suffers performance in that area. If you don't have enough content of a specific type, it doesn't make sense to monitor that cache.
That being said, from the top of my head I remember that the caches are available for your monitoring.
My recommendation is to browse through the MBeans and figure out if the given values make sense for your installation and usecase. They do have quite descriptive names.
Also, keep in mind that in general production you'll monitor other values than e.g. during performance tuning. (Coming back to caches: It makes sense to dimension the caches according to their actual size - but they wouldn't vary greatly day to day. So looking at them manually - when you want to change some config - makes sense

Related

General questions about JHipster

Sorry if this is not a place to ask these questions. But I just want to know if...
Can JHipster go large scale applications?
Is it possible to minimize the generation of codes especially with the UI part?
Can I extend some RestController class that has been generated to. (Like a custom model class where in I get base64 string to write in a file)
Sorry again for asking, its just that I'm building a startup business and I want to know if these are all possible. I can't help but to get over excited on JHipster and I'm literally crossing my fingers now!
Thanks guys!
Three questions in one, in fact!
It depends of what you call "large scale". We have users with several hundreds of tables, so that's what I would qualify as "large". Other people use a "micro service" approach, with several JHipster apps working together, and that's what I'd recommend. Our Gatling tests (as well as feedback from users) also show we are able to sustain a large amount of HTTP requests, compared to "competing" stacks such as JBoss or Play! (but both of them don't have default settings oriented towards production, like our "prod" profile - for example they don't have a 2nd level cache enabled by default - so that's normal we are much more performant out-of-the-box)
If you don't like the UI part you can remove it, but in that case I would recommend not using JHipster -> this is the whole idea, otherwise just use a bona fide Spring Boot, or DropWizard
It's just a generator, so yes you can extend or modify anything that was generated
yes you can, i have used it for one educational board who have 20housand+ js file, and also used it for 3 ministry

What is server specification to support 1000 simultaneous users in Liferay Portal?

We have installed liferay portal in our server and we want to know if we want to support more than 1,000 simultaneous users what harware is required?
What bandwidth and cpu or ram we need?
Is there any formula or something to get that requirement based on number of users?
Pankaj Kathiriya already linked to http://www.liferay.com/documentation/additional-resources/whitepapers in the comment to your question - please look for the "Performance Whitepaper" there. That one highlights 4 different scenarios on a given hardware platform. You'll easily see that the correct answer is "it depends". Now, what does it depend on?
It's the scenario you're implementing: Anonymous access to the site with fully cacheable pages is a different story than highly interactive and permission-controlled access with lots of integration. Also, pure text-based portals will differ in bandwidth requirements from media-rich portlets. And lastly, you can tune Liferay and the related web request to quite some extent, in order to serve static content from other locations etc.
So, read the performance whitepaper, identify the scenario that comes closest to yours and make sure you tune your system if you need more performance.

Alternative to Liferay/JSR 168 and 286 Portals?

My team has been writing a dashboard application using Node.js, Twitter Boostrap, Mongo DB, and Mule for an ESB.
Recently an executive asked us to change our approach to a Portal/Portlet container like Liferay.
Some of us on the team have experience with Liferay, and we have pretty negative feelings about it. Dealing with things like full-page refreshes, portlet lifecycles, style and theming issues, and limited DBMS coverage are at the top of our list of complaints.
We see where our executive team is coming from. They have decided that they want to make the dashboard extensible and easy or easier to plug into for other groups.
Is there a solution out there which can balance the modern web expectations of users with the enterprise needs of IT professionals and executives concerned with building and extensible application with something like Liferay? Pluggable widgets are important here.
Node would obviously be our preference with something like Grails as a close second.
Thanks,
This question may not exactly be a good fit for StackOverflow's format, but I can offer some thoughts still.
If you want to stick your current platform, you need to figure exactly what features your executives want to get out of moving to a new platform. Are those features something you can build into your current platform? How much effort will that take compared to rewriting everything else? How effort will it take to learn a new skillset across your whole team? I'm sure your team can learn the new skills effectively but that still takes effort and there will be growing pains as your teams learns. If you can show to your executives that you can get the same features for a similar or less effort and that you can still have similar total cost of ownership, you can make a case to stay on your current platform.
Also I think you are underestimating what a Portlet container can do. I work mostly with WebSphere Portal so maybe thats why I think most of the pain points you mentioned really aren't that difficult to manage for me. Just because your container needs a particular DBMS to manage itself does not mean you can't use a separate DB for your custom data needs. JSR-286 introduced serveResource as a way to make AJAX easier to implement in portlets. In WebSphere Portal (don't know about Liferay), changing out the whole page content without a page reload might the most difficult on your list I'll admit though.
Modern doesn't have to mean bleeding-edge tech. And the large software products can still perform if you know how to use them right, just like any other tool.

Viability of using ADF Faces outside of jDeveloper studio

Having worked with 2 JSF component libraries, or frameworks if you wish, I can't help
but wonder if I'm missing a trick by not evaluating ADF Faces. The big stumbling block
for me is the way ADF is clearly deliberately tied in with jDeveloper studio. I work
with NetBeans on a glassfish a/s, and as open as I am to change, I want to maximise
my existing experience and leverage this stability.
My (tentative) rationale is that perhaps a company with the resources of Oracle could,
perhaps, come up with a better quality product than other alternatives and with superior
functionality, and this is what I wish to evaluate.
So I just wondered if anyone had any experience they could share with respect to working
with ADF Faces outside a jDeveloper environment. Presumably from a technical perspective
it's not much more than extracting the necessary jars from the distribution and taking
it from there. Equally important would be any licensing/legal considerations of course.
I've read that ADF has a business layer however I'd want to continue working with a Java
6 EE stack at this time.
What would be really cool would be to have a maven repository, although presumably the
reason that no such thing exists is to protect the jDeveloper business.
Has anyone got ADF working outside jDeveloper, got it working and can provide a small
amount of direction as to any major considerations.
If so, is it worth it? is ADF Faces a superior and more in depth product than can
otherwise be found (oh no, what have I said...)?
What are the licensing considerations? my present understanding is that fees would be
payable is you're not using weblogic. How about glassfish enterprise?
I have only recently found out, and was very surprised, to realise that ADF has the
third JSF core implementation, alongside Mojarrra and MyFaces. Is this just a case of
taking the RI and making a few necessary changes to support core ADF functionality or
more than that? I see from the JIRA that Ed Burns corresponds closely with the ADF
team, of course they now work for the same company. Clearly the RI has to mirror the
spec, and that takes time, so this in itself could be interesting.
Thanks.
dont know if this will help you , but it seems that you can now freely deploy adf on glassfish server
https://blogs.oracle.com/shay/entry/deploying_oracle_adf_applications_to
http://docs.oracle.com/cd/E35521_01/admin.111230/e16179/ap_glassfish.htm#BABIEADD
ADF is only officially certified to work with WebSphere 7.0.0.13 AS or ND(aside from weblogic of course). Although there are blogs and forum posts that indicate people were able to make it work with Tomcat(with much pain of course).
I know for a fact that there is an eclipse version/plugin/whatever that has ADF Faces features.
AFAIK, you only have to pay when you are using a container/AS that is not weblogic.
ADF Faces is great. It has all the components you would expect plus more. It also has a great Controller framework(see ADF Task Flows). For demos you can check out the Demo.

Are there any WCF Configuration Tools out there that will make the job easier

Are there any tools that go beyond requiring deep and intimate knowledge of every configuration option and nuance and will just setup an application with a minimum of inputs. Something like a wizard that produces the XML configuration based on those simple inputs. I don't care about security I just need the service to work. Ideally the tool would be able to setup IIS6 as well or at least with a given set of options it would produce a list of steps I needed to complete in IIS.
The Microsoft Service Configuration Editor is no better than direct editing of the XMl. I did find a web site that has the right idea but it wasn't able to solve my simple installation. (http://www.noemax.com/support/wcf_binding_configuration_wizard.html).
Is there anything out there that puts some convention into play over this mountain of configuration?
WCF configuration can look very daunting at first, indeed! I like that configuration wizard you linked to - why wasn't it good enough for you?
I don't know of any tool right now, that would solve your problem and help you figure out the proper configuration - it really boils down to learning the ropes and getting to know the ins and outs of it, I'm afraid.
Basically, what I've learned is : don't even start to imagine all the things you could do - try to focus on what you should do (and what you need).
Really, it boils down to about five scenarios as outlined in the excellent book "Programming WCF" by Juval Lowy:
intranet apps (use the NetTcp binding, Windows security)
internet apps (use the wsHttp binding if ever possible, username/pwd or certificates for security)
business-to-business apps (use whatever binding makes sense, secure by certificates)
queue message delivery (MSMQ)
no-security apps (legacy ASMX support, interop with "dumb" webservice clients)
Basically, pick the one you need, and from there, you're pretty much set as to what to do and how to do it. I would definitely recommend checking out Juval's book - excellent excellent resource!
So the question is: which category does your app fit in? Based on that, you can pretty much determine all that's needed from there.
Also, I watched two screencasts that really helped me get over the heaps of configuration options in WCF, and focus on what's really important:
Extreme WCF with Miguel Castro
Demystifying WCF with Keith Elder
Both gave me a good feel for what configuration is really needed - and what is just fluff.
Hope that helps some!
Marc

Resources