44
Red Hat & JBoss @ ČVUT FIT JBoss Community x Enterprise Václav Tunka Software engineer JBoss Enterprise Platforms 15 th April 2013

JBoss @ CVUT FIT April 2013

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: JBoss @ CVUT FIT April 2013

Red Hat & JBoss @ ČVUT FITJBoss Community x Enterprise

Václav TunkaSoftware engineerJBoss Enterprise Platforms

15th April 2013

Page 2: JBoss @ CVUT FIT April 2013

What is JBoss?

Page 3: JBoss @ CVUT FIT April 2013

What is JBoss Application Server?

● Open Source Java EE server.

● Found by Marc Fleury in 1999.

● The name came from Enterprise Java Beans (EJB) -> EJBoss.

Page 4: JBoss @ CVUT FIT April 2013

Runtime for back-end applications.

Page 5: JBoss @ CVUT FIT April 2013

Programmers can concentrate on customer logic.

Page 6: JBoss @ CVUT FIT April 2013

Transactions

Page 7: JBoss @ CVUT FIT April 2013

Messaging

Page 8: JBoss @ CVUT FIT April 2013

Load balancing

Page 9: JBoss @ CVUT FIT April 2013

Persistence

Page 10: JBoss @ CVUT FIT April 2013

Clustering

Page 11: JBoss @ CVUT FIT April 2013

Caching

Page 12: JBoss @ CVUT FIT April 2013

Java EE standards – to sum up

● Web Server (HTTP, HTTPS)

● Web container (JSP, JSF, Servlets, ...)

● Enterprise Java Beans (EJB)

● Persistence API (JPA)

● Transactions API (JTA)

● Web Services (JAX-WS)

● Messaging (JMS)

● Management (JMX)

● Security (JAAS)

Page 13: JBoss @ CVUT FIT April 2013

Let's talk about community projects first

Page 14: JBoss @ CVUT FIT April 2013
Page 15: JBoss @ CVUT FIT April 2013
Page 16: JBoss @ CVUT FIT April 2013
Page 17: JBoss @ CVUT FIT April 2013
Page 18: JBoss @ CVUT FIT April 2013
Page 19: JBoss @ CVUT FIT April 2013
Page 20: JBoss @ CVUT FIT April 2013
Page 21: JBoss @ CVUT FIT April 2013
Page 22: JBoss @ CVUT FIT April 2013
Page 23: JBoss @ CVUT FIT April 2013
Page 24: JBoss @ CVUT FIT April 2013
Page 25: JBoss @ CVUT FIT April 2013

Packaging and component integration is the key

Page 26: JBoss @ CVUT FIT April 2013

What is productization?

● Productization is a systematic effort to create a supported and tested product version out of JBoss and thirdparty opensource projects.

● Cooperative effort with help of many other departments

● Productization department is ultimately responsible for the products

Page 27: JBoss @ CVUT FIT April 2013

Why Productize?

● Meet Software License Requirements

● Provide Consistent Branding Message

● Improve User Experience

● Deliver Secure Applications

● Enable Effective Product Support

● Improve Product Packaging/Installation/Maintenance

Page 28: JBoss @ CVUT FIT April 2013

Productization: Fedora x JBoss.org projects

Page 29: JBoss @ CVUT FIT April 2013

Fedora is productized already1) Legal

2) Branding

3) Usability

4) Security

5) Support

6) Packaging

Page 30: JBoss @ CVUT FIT April 2013

The JBoss Community is not productized

● Focused on R&D

● Legal requirements are not always checked

● Over 70 JBoss.org projects● Different brands● Many different communities

Page 31: JBoss @ CVUT FIT April 2013

JBoss Community Builds

● Different Project Sites (JBoss.org, github, etc)

● Different SCMs (svn, git, etc)

● Different Build Tools (Ant, Maven, Gradle)

● Thirdparty Projects (Apache, Codehaus, Sun/Oracle)

Page 32: JBoss @ CVUT FIT April 2013

Fedora vs. JBoss Community

● Fedora takes community projects and packages them into a coherent system

● The JBoss Community focuses on delivering a variety of (very) loosely related projects

Page 33: JBoss @ CVUT FIT April 2013

Productizing JBoss EAP

Page 34: JBoss @ CVUT FIT April 2013
Page 35: JBoss @ CVUT FIT April 2013

JBoss EAP Productization

1) Legal

2) Branding

3) Usability

4) Security

5) Support

6) Packaging

Page 36: JBoss @ CVUT FIT April 2013

Challenges

● Java/Maven vs. RPM

● Rebuilding Takes Time● Locate the source● Understand the build● Find the dependencies● Build● Add Bugs! :)

● Delay between upstream changes and product release

Page 37: JBoss @ CVUT FIT April 2013

Lots of Dependencies

● JBoss AS has ~200 direct dependencies

● All build and test dependencies for all components?● Greater than 1000

Page 38: JBoss @ CVUT FIT April 2013
Page 39: JBoss @ CVUT FIT April 2013

Quick summary Community projects vs. Enterprise products

What is productization?

Why is it important?

Page 41: JBoss @ CVUT FIT April 2013

Additional Creative Commons images

● Geocaching CC image

● JBoss.org design & slide decks

Page 42: JBoss @ CVUT FIT April 2013

TITLE SLIDE: HEADLINE

Presenter

nameTitle, Red HatDate

Thanks for listening!

Page 43: JBoss @ CVUT FIT April 2013

Come work for us!

● The job is a combination of developement, packaging and release engineering

● You should have overview of Java ecosystem

● You should know maven and ant

● Experience with releases and packaging is welcome

Page 44: JBoss @ CVUT FIT April 2013

What is productization?

● We take jboss.org community projects and other opensource libraries and package them together

● We also provide fixes for the product branch and keep it in sync with upstream

● If the upstream community is inactive, we take charge

● We build every 3rd party dependency from sources