Name |
Description |
Target Environment |
Service Registration & Service Discovery |
Netflix Eureka |
Eureka is a REST (Representational State Transfer) based service that is primarily used in the AWS cloud for locating services for the purpose of load balancing and failover of middle-tier servers.
At Netflix, Eureka is used for the following purposes apart from playing a critical part in mid-tier load balancing.
- For aiding Netflix Asgard – an open source service which makes cloud deployments easier, in
- Fast rollback of versions in case of problems avoiding the re-launch of 100’s of instances which could take a long time.
- In rolling pushes, for avoiding propagation of a new version to all instances in case of problems.
- For our cassandra deployments to take instances out of traffic for maintenance.
- For our memcached caching services to identify the list of nodes in the ring.
- For carrying other additional application specific metadata about services for various other reasons.
Source: https://github.com/Netflix/eureka |
Development
Test
Production |
Servlet Container |
Apache Tomcat |
The Apache Tomcat® software is an open source implementation of the Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies. The Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket specifications are developed under the Java Community Process.
The Apache Tomcat software is developed in an open and participatory environment and released under the Apache License version 2. The Apache Tomcat project is intended to be a collaboration of the best-of-breed developers from around the world. We invite you to participate in this open development project.
Apache Tomcat software powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations.
Source: https://tomcat.apache.org/ |
Development
Test |
Eclipse Jetty |
Jetty provides a Web server and javax.servlet container, plus support for HTTP/2, WebSocket, OSGi, JMX, JNDI, JAAS and many other integrations. These components are open source and available for commercial use and distribution.
Jetty is used in a wide variety of projects and products, both in development and production. Jetty can be easily embedded in devices, tools, frameworks, application servers, and clusters. See the Jetty Powered page for more uses of Jetty.
The current recommended version for use is Jetty 9 which can be obtained here: Jetty Downloads. Also available are the latest maintenance releases of Jetty 8 and Jetty 7.
The Jetty project has been hosted at the Eclipse Foundation since 2009. Prior releases of Jetty have existed in part or completely under the Jetty project at the The Codehaus and Sourceforge before that.
Source: https://www.eclipse.org/jetty/ |
Development
Test
Production |
Persistence |
Eclipse Link |
The EclipseLink project provides a runtime persistence solution focused on leading standards and extended functionality needed for today’s enterprise Java and SOA application development. EclipseLink offers support for:
- Object-Relational (JPA)
- NoSQL (NoSQL databases, and EIS)
- MOXy: Object-XML (JAXB) & Object-JSON
- DBWS: Database Web Services
- Service Data Objects (SDO)
EclipseLink is a sub-project of the Runtime Project.
Source: https://wiki.eclipse.org/EclipseLink |
Development
Test
Production |
Database |
PostgreSQL |
PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.
Source: https://www.postgresql.org/ |
Development
Test |
Apache Derby |
Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0. Some key advantages include:
- Derby has a small footprint — about 2.6 megabytes for the base engine and embedded JDBC driver.
- Derby is based on the Java, JDBC, and SQL standards.
- Derby provides an embedded JDBC driver that lets you embed Derby in any Java-based solution.
- Derby also supports the more familiar client/server mode with the Derby Network Client JDBC driver and Derby Network Server.
- Derby is easy to install, deploy, and use.
Source: https://db.apache.org/derby/ |
Development
Test |