GlassFish on Steroids, Micro, Full, Clouds and Commercial Support--An Interview With Dominika Tasarz 📎
Dominika, please introduce yourself
I’m Dominika Tasarz and I’m a Community Builder and a Head of Marketing at Payara Services Ltd, the creators of Payara Server and Payara Micro. You can find me on Twitter twitter.com/Dominislawa and LinkedIn www.linkedin.com/in/dominikatasarz
What is your daily job at Payara?
I’m responsible for Payara’s marketing and communication strategy and a big part of my role is managing our involvement in the Payara users’ community. Basically, I’m behind most of the external communication from Payara. Everything you see on the website, in the emails, official announcements, on Twitter etc. - I probably had something to do with it ☺ . I also work very close with our Engineering and Development teams to deliver technical content, most of it published on the Payara Blog, in our user guides, data sheets and external publications. I organise Payara’s involvement in various conferences, online webinars, user groups etc., so those of you who know me probably met me at one of those events.
What is Payara and Payara Server?
Payara Server is an open source application server derived from GlassFish Server Open Source Edition. It is developed by Payara Services Ltd and released quarterly with bug fixes, hot fixes, enhancements and patches. In addition to the continuous development of its application server, Payara provides dedicated 24/7 production and developer support for Payara Server. Payara Server was developed in response to Oracle’s announcement to discontinue GlassFish support. Initially, we wanted to help by just offering support for GlassFish Open Source Edition, but we quickly noticed that it won’t be enough so we decided to create our own version with regular releases, bug fixes and patches – that’s how Payara Server (and later Payara Micro) came into existence. Both application servers are open source and are free to use for production, development and testing under the standard CDDL license.
To me, the best way to describe Payara Server is ‘GlassFish on steroids’ – everything you wanted to fix in or add to GlassFish – it’s probably already in Payara Server, and if it’s not – let us know on GitHub github.com/payara/Payara/issues and we’ll add/fix it!
Payara Server is not just a drop-in replacement for GlassFish though – it is much more than that! You don’t have to be a GlassFish user (past or present) to benefit from using Payara Server. Payara Server is a powerful and easy to use open source app server, perfect for running your Java EE apps both in production and development; with many enterprise-level features, frequent releases, vibrant community, easy licensing model and support options available. And we’re constantly working on developing and improving it even further - our vision is to optimise Payara Server to make it the best application server for production Java EE applications; with responsive 24/7 dedicated incident and software support delivered by the best middleware engineers in the industry.
Tell me more about Payara's commercial offerings. Why is it worth to give your money? :-)
On top of the Payara Server open source user’s benefits, such as regular quarterly releases, GitHub Issues support and unlimited deployment options, those who buy the subscription can benefit from 24/7 support services including phone, web, email & screen sharing support, as well as hot fixes, security fixes and monthly patched releases.
So, if you’re running GlassFish in your production or development environment and are worried about the lack of support from Oracle, infrequent application server releases, lack of bug fixes and patches - you must try Payara Server. Just a little warning - you will never want to go back to GlassFish after that! You can choose from three different levels of support (Basic, Professional and Enterprise) depending on how you want us to respond to your tickets, and the subscription price varies depending on the size of your environment. More info can be found on www.payara.fish/support
How Payara is doing? Can you name some of your customers?
Payara is doing very well – we’ve grown significantly in the last 12 months and the predictions for 2017 are looking good too. We’re currently expanding our technical team (see our careers page http://www.payara.fish/careers ) to deliver even more cool new features in Payara Server and Payara Micro next year. We’re also working on a couple of projects which will definitely benefit our current and future support customers – I can’t say too much right now but watch this space!
It’s very important to mention that we wouldn’t be here without our users’ community, especially Payara Support Customers, whose subscriptions fund development and engineering effort of the Payara Server open source project - we would not be able to make the continuous improvements to Payara Server without their help. Some of our biggest customers include BMW Group, Papa John’s Pizza, Siemens and UC Davis, all running Payara Server in production with our support.
What are the unique Payara features?
Payara has a lot of unique features, especially in comparison to GlassFish. We created a nice Payara Server vs Glassfish comparison table if you want to see the details: info.payara.fish/payara-server-glassfish-comparison I think the key features to highlight would be the production enhancements such as Slow SQL Logging and Healthcheck Service blog.payara.fish/new-features-for-ops-teams-in-payara-server There are also some cool developer features like Asadmin Command Recorder blog.payara.fish/asadmin-recorder-new-payara-server-feature-demo or the Request Tracing Service payara.gitbooks.io/payara-server/content/documentation/extended-documentation/request-tracing-service/request-tracing-service.html .
JCache integration is also worth mentioning, as it allows for a huge flexibility when architecting topologies for High Availability and Scalability. Utilising the embedded Hazelcast Data Grid for web session and JCache clustering brings the potential of many different topologies for scale out blog.payara.fish/flexible-ha-and-scalability-architectures-with-payara-server . There are Docker images available, both for Payara Server and Payara Micro ( blog.payara.fish/payara-docker-images-162-release-update ). And if you like playing around with Raspberry Pi, you can try to build a Piyara – check out Steve Millidge’s demo to find out how http://blog.payara.fish/piyara-payara-micro-on-raspberry-pi-demo .
On top of the many unique technical features, in comparison to other application servers, Payara Server gives you the biggest flexibility in regards to moving from development environment into production. Licensing is extremely straightforward, allowing you to stay on the same software version for testing/development and production without paying anything extra or migrating onto the ‘enterprise’ version. With Payara Server you can swiftly move into production whenever you’re ready and at any point in the process you can contact us to arrange for a support subscription. It’s much easier than using other app servers such as WildFly (which requires you to move to JBoss EAP for production use) or WebLogic (which is not open source and a lot of organisations can’t afford the license fees).
How many GlassFish bugs have you already patched?
Our number one priority for every release is bug fixing. In total, running a search on our JIRA instance, we have fixed more than 250 bugs since we started the Payara project. Many of these bugs will be in upstream GlassFish. Also, there will be many, many more bugs fixed by incorporating the latest versions of other components like CDI (Weld), JSF (Mojarra), WebSockets (Tyrus), Networking (Grizzly) and all the other externally developed components we regularly update for each release.
Payara's Repository https://github.com/payara/Payara is consistently active. Are you also receiving any contributions from the community?
At the moment, we have 16 contributors that have signed the CLA so we can directly merge their pull requests. We are very grateful to these users and each of them will have received a goody bag of Payara swag as a thank you. We also have many other contributors that help out on GitHub through raising issues and fixes which we incorporate from their suggestions github.com/payara/Payara/issues . We are very open to external contributions and can point people to issues or simple tasks if they want to get involved. Payara Server is a fully open source project so people interested in building an application server should get involved and raise a pull request.
Which tools or IDEs are you using?
All our developers are free to use whichever IDE they choose, but the majority of the team use NetBeans due to its superb Maven and Git support which copes easily with a very complex Maven project like Payara Server. Also, NetBeans integrates very well with Payara Server out of the box so debugging and profiling from within the IDE is simple. Other tools the team use are Jenkins for Continuous Delivery. In fact, at the moment we are building a large cross-platform Jenkins infrastructure, which will run our entire test suite across all platforms and JDKs for every merge.
You are visiting Java conferences around the world. What is your impression, is Java EE popular?
Java EE has always been popular throughout the time I’ve been working in this industry, that is since 2010. The tech world is extremely fluid and moves forward very quickly so of course a lot of things have changed in the last couple of years which affected the way Java EE is used. E.g. by now everybody knows that if you’re using SOA or monoliths you’re ‘supposed to’ move to microservices. The growing popularity of DevOps, deployment automation tools, containers such as Spring Boot and Docker is noticeable and the pressure to virtualise your infrastructure and move it onto the cloud is high.
All this time though, from what I’ve noticed, regularly talking to the community, customers and other vendors, Java EE is still staying strong. We tend to forget that a typical company running middleware infrastructure is often very much behind the industry hype. Don’t get me wrong, it doesn’t mean that Java EE will lose its relevance once the companies catch up with the new technologies - it just means that Java EE needs to develop and evolve to follow the latest trends, and we hope it will. There’s been a lot of announcements on what’s coming in Java EE 8 at this year’s JavaOne conference (Linda Demichiel’s presentation is probably the best place to start: youtu.be/KgLxnz0L7mo?t=6h45s ); and it looks like the next step is towards a new application development style for cloud and microservices, so things are looking promising. Although it is quite disappointing that the release date has been delayed again.
One of the many myths about Java EE, contributing to the opinion that it’s losing in popularity, is its alleged incompatibility with microservices, which is simply untrue. As creators of Payara Micro, members of the MicroProfile initiative and big supporters of Java EE, we’ve taken it upon ourselves to show developers how easy it is to use Java EE with microservices. Our ‘Microservices for Java EE Developers’ blog.payara.fish/microservices-for-java-ee-developers article by Fabio Turizo is just the beginning.
Payara is involved in the microprofile.io initiative. What is microprofile.io and how are your involved?
MicroProfile microprofile.io is a vendor and community collaboration aiming to make it easier for developers to use familiar Java EE technologies and APIs for building microservice applications. Our goal for MicroProfile is to rapidly innovate new APIs suitable for microservice architectures that integrate well with CDI and other Java EE technologies. With all the participants in MicroProfile we can experiment, innovate and see what works before these ideas are fed into JSRs at the JCP for standardisation. Having rapid implementation, open collaboration and working runtimes is our goal for MicroProfile. Payara Micro will form the foundation of our MicroProfile offering. Payara Micro is incredibly modular; however, it’s difficult to expose this modularity to outside developers, so we are currently working on a new Payara Micro jar format that will easily allow additional modules to be added to the jar while retaining the core features of the current Payara Micro. At Payara, we will be developing CDI based integrations to many of the popular microservice technologies out in the wild and releasing these as Payara Micro and Server modules.
Payara Micro's killer feature is the support of "Thin Wars" and so lightning speed builds: https://www.youtube.com/watch?v=8Da5jOMaNtk. What are the other typical use cases for Payara Micro?
Payara Micro www.payara.fish/payara_micro is designed for cloud based elastic infrastructures, whether on Docker or on traditional virtualisation technologies. Another killer feature for standard web applications is Payara Micro’s elastic clustering capabilities blog.payara.fish/payara-micro-dynamic-clustering-demo . Payara Micro embeds the industry leading open source data grid from Hazelcast as the core session replication technology, so large scale web deployments can take advantage of Hazelcast for large scale web clustering. Payara Micro is also ideal for microservice style deployments as it is small, fast and incredibly easy to use for JAX-RS or WebSocket microservices.
Your swag is legendary. Which upcoming conferences are you going to visit?
Thanks Adam! I really like this part of my job too – making sure we have the right swag for our community – maybe a little less serious responsibility, but still very important ;-) We were extremely busy attending and speaking at the conferences this year and 2017 is looking busy too - we’re hoping to be back at the key industry events. First one will be Java Land in Germany in March, then in the autumn conference season we’re hoping to visit JavaOne again, Devoxx, W-JAX, jDays, NetBeans Days, GeeCon, JDD and a lot of smaller JUG events around the world, both in-person and virtually. Just keep an eye on our Twitter and news page to see where we are, as new events and conferences are often added to our agenda during the year. And if you want someone from the Payara team to get involved in your event, just let us know and we’ll do our best to be there.
Can you share any resources (blogs, etc feel free to promote yourself) with us?
Well, first off, if you haven’t tried Payara Server yet - go ahead and download it from www.payara.fish/downloads If you want to stay up to date with the newest features overviews, how-to articles, demos etc. check out – or event better: subscribe to – our blog: http://blog.payara.fish/ (technical content only!). For technical documentation about both Payara Server and Payara Micro, see GitBooks: https://payara.gitbooks.io/payara-server/content/getting-started/getting-started.html
For those of you who want to find out more about Payara Support, have a look at the services page, where you will find the details of support levels, prices, SLAs, policies etc.: www.payara.fish/support
And if you want to officially join the community and contribute to the Payara code, see our community page. You can even dive straight in, sign our CLA and start developing Payara Sever with us: www.payara.fish/community !
Dominika, thank you for the interview!